我正在netbeans中开发java应用程序。我连接数据库sqlite,它工作完美。现在,我正试图删除数据库中的一个字段:
public void delete(){
dbo.openConnection();
String sqlCommand = "DELETE FROM restaurante WHERE id_restaurante = " + this.id_restaurante;
System.out.println(sqlCommand);
dbo.executeSQL(sqlCommand);
dbo.closeConnection();
}
当我执行这个方法时,我得到这个错误:
DELETE FROM restaurante WHERE id_restaurante = 4
ERRO null
…并且该字段不会在数据库中删除。
如果我复制这一行:DELETE FROM restaurante WHERE id_restaurante = 4
并尝试在sqlite管理器(firefox插件)中删除,效果很好。
任何想法?
不妨试试:
String sqlCommand = "DELETE FROM `restaurante` WHERE `id_restaurante` = " + this.id_restaurante;
什么是error null ?是堆栈跟踪不完整还是你自己写的?我猜对于第二个解决方案,方法
有问题dbo.executeSQL(sqlCommand);
调试或添加日志。
检查:
- 连接已正确打开。
- 检查上面的方法中没有空指针。我几乎可以肯定这就是问题所在。
- 检查您是否有权删除程序中的连接。
应该可以了
String sqlCommand = "DELETE FROM restaurante WHERE id_restaurante = '" +id_restaurante+"'";