0

オラクルではselect * from table_name where column_name=&value、同様の方法でアンパサンドを使用する方法を使用していJDBCますか?

stmt = conn.createStatement();
      String sql;
      sql="select emp_name from employees"+" where emp_no=?";
      ResultSet rs=stmt.executeQuery(sql);
      while(rs.next()){
          String emp_name=rs.getString("emp_name");
        System.out.println(emp_name);  

      }

上記のコードを書きましたが、機能していません(エラーが表示されます)

4

2 に答える 2

3

私がリンクした記事を読みましたか?

疑問符?を使用して、パラメーターを指定するクエリ内の場所を示し、PreparedStatement を使用する必要があります。テストできませんが、次のようになるはずです。

// some code to obtain the Connection object

PreparedStatement stmt = null;
String yourQuery = " SELECT emp_name FROM employees WHERE emp_no = ? ";

try {
  stmt = conn.prepareStatement(yourQuery);
  stmt.setLong(1, 252);

  ResultSet rs = stmt.executeQuery();

  while(rs.next()) {
    String emp_name = rs.getString("emp_name");
    System.out.println(emp_name);
  } 
} finally {
  // close the stmt etc.
}
于 2013-10-10T11:51:50.280 に答える