title: "ORA-01008: not all variables bound" error
body: <p>I am using following method for calculating payroll by using jdbc but "ORA-01008: not all variables bound" error is not removing.</p>
  
  <p>Any idea please?</p>
  
  <p>I am using following code</p>
  
  <pre><code>public double getPayroll(){
              ResultSet rs = null;
              ResultSet rs1 = null;
              ResultSet rs2 = null;
  
              Connection conn = null;
              PreparedStatement pstmt = null;
              try {
                      conn = getDBConnection();
                      double dailyPay=0,basicPay=0,payroll2=0;
                      int houseRent=0,convAllow=0,noOfPresents=0,empId=0;
                      String q = "select e_id from employee";
                      pstmt = conn.prepareStatement(q);
                      rs = pstmt.executeQuery();
                      while (rs.next()) {
                          empId=rs.getInt(1);
                          String q1 = "select count(att_status) from attendance where att_status='p'";
                          pstmt = conn.prepareStatement(q1);
                          rs1 = pstmt.executeQuery(q1);
                          while(rs1.next()){
                              noOfPresents=rs1.getInt(1);
                              String q2 = "select e_salary,e_house_rent,e_conv_allow from employee where e_id=?";
                              pstmt = conn.prepareStatement(q2);
                              pstmt.setInt(1,empId);
                              rs2 = pstmt.executeQuery(q2);
                              while(rs2.next()){
                                  dailyPay=rs2.getInt(1)/22;
                                  houseRent=rs2.getInt(2);
                                  convAllow=rs2.getInt(3);
                                  basicPay=dailyPay*noOfPresents;
                                  payroll2+=basicPay+houseRent+convAllow;
                              } 
                          }
                      }
                      return payroll2;
               }catch (Exception e) {
                e.printStackTrace();
                return 0.0;
              } finally {
                try {
                  rs.close();
                  pstmt.close();
                  conn.close();
                } catch (Exception e) {
                  e.printStackTrace();
                }
              }
  } 
  </code></pre>