sql语句:
public static void deleteUser(String loginName){
String sql = "update user set flag=3 where loginName= "+ loginName ;
DBUtil.getInstance().delete(sql);
}
错误信息:
java.sql.SQLException: Data truncation: Truncated incorrect DOUBLE value: 'admin' Query: update user set flag=3 where loginName= 123654 Parameters: []
不太懂是怎么错了
update 语句不能调用delete方法,
DBUtil.getInstance().**delete**(sql);
你换update方法试试
如果你要实现删除,那么你sql语句写错了,应该为
String sql = "delete from user where loginName="+loginName ;
同时,要捕获SQL异常
try{
DBUtil.getInstance().delete(sql);
}catch(SQLException e){
e.printStackTrace();
}
从抛出的异常可以看出将loginName=123456当成double类型的了,所以你的sql语句拼错了!应该拼成这样的where loginName=“123456”。避免这个错误可以?占位符,使用preparedStatement对象的setString方法填充?部分,可直接设置字符串类型的loginName了。
抱歉,手机渣网速,一直发表不了,就连续点了好几下,结果还都上传成功了,显示了这么一堆。。。