做了一个界面,输入数字可以执行,但是输入文字或者字母就提示以上错误。
原代码:
int num = statement.executeUpdate( "insert into fruit values("+item.getNumber()+","+item.getName()+","+item.getPrice()+","+item.getUnit()+")" );
sql语句有问题,涉及到字符串的引用和数字引用的区别;
数字引用时,可以直接+连接;
字符串引用时,需要加双引号,外加单引号,即相当于最左边和最右边的双引号里面是一句sql语句,中间的双引号里面是一个字符串,单引号作为外面双引号里面的引用。
修改如下:
int num = statement.executeUpdate( "insert into fruit values('"+item.getNumber()+"','"+item.getName()+"','"+item.getPrice()+"','"+item.getUnit()+"')" );