[英]Query in java does not work
我嘗試從Java運行查詢,我在postgresql編輯器中運行查詢,但這項工作有效,但是在運行應用程序不起作用時,運行查詢不返回任何數據
這是代碼:
private synchronized Perfil consultarPerfil(String nombre) {
Perfil perfil = null;
String sql = "SELECT * FROM PERFIL WHERE NOMBRE = ?";
Connection connection = conexion.getConnection();
try {
PreparedStatement statement = connection.prepareStatement(sql);
statement.setString(1, nombre);
ResultSet rs = statement.executeQuery();
while (rs.next()) {
perfil = new Perfil(rs.getString("nombre"), rs.getString("descripcion"), rs.getBoolean("estado"));
}
} catch (SQLException ex) {
Logger.getLogger(ColeccionPerfiles.class.getName()).log(Level.SEVERE, null, ex);
} finally {
conexion.close(connection);
}
return perfil;
}
添加這個:之后=這樣
字符串sql =“ SELECT * FROM PERFIL WHERE NOMBRE =:?”;
注意:參數必須與字段“ nombre”具有相同的數據類型
如果表PERFIL中的NOMBRE列為NUMBER,則當您嘗試將參數設置為Int時,如下所示:
statement.setInt(1, nombre);
代替
statement.setString(1, nombre);
問候,
我嘗試在=之后添加:但顯示異常,NOMBRE是字符串類型,我只有一個數據庫。 連接正常。
我有時可以從Java運行查詢,但隨后停止工作,調試器不顯示錯誤。 重新啟動計算機,然后清理緩存無法使用netbeans。
我最近在用Java花費了很多這樣的錯誤。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.