在QT项目遇到这个问题,当绑定变量为空字符串,但是数据表中数据为null时,无法对应。
//update flag=0
sql_update="update test set flag = '0' where c1=? and c2=? and c3=?";
querydbGoods2.prepare(sql_update);
querydbGoods2.bindValue(0,c1);
querydbGoods2.bindValue(1,c2);
querydbGoods2.bindValue(2,c3);
querydbGoods2.exec();
以上代码有可能出现c3变量为空字符串,但我的表中对应的c3是NULL,所以一直出现bug。
所以我把表中的null设置为空白字符串。
update product set c3='' where c3 is NULL