数据写不到数据库中
代码如下:
String number = request.getParameter( "number ");
String username2 = request.getParameter( "username2 ");
String username2Encode=new String(username2.getBytes( "ISO8859_1 "), "GBK ");
float price1=Float.valueOf(request.getParameter( "price1 ")).floatValue();
out.println(price1);
float price2=Float.valueOf(request.getParameter( "price2 ")).floatValue();
float price3=Float.valueOf(request.getParameter( "price3 ")).floatValue();
float price4=Float.valueOf(request.getParameter( "price4 ")).floatValue();
String sql= "INSERT INTO price (employeename,number,price1,price2,price3,price4,) Values ( ' "+username2Encode+ " ', "+number+ ", ' "+price1+ " ', ' "+price2+ " ', ' "+price3+ " ', ' "+price4+ " ') ";
sqlbean.executeInsert(sql);
单独写入employeename,number,的时候可以写入,就是那四个price不能写入数据库中,用out.println(price1);测试的时候有输出price1的值,请各位XJDM帮帮忙
------解决方案--------------------执行sql的时候try一下,看看有什么异常没有啊
------解决方案--------------------String sql= "INSERT INTO price (employeename,number,price1,price2,price3,price4,) Values ( ' "+username2Encode+ " ', "+number+ ", ' "+price1+ " ', ' "+price2+ " ', ' "+price3+ " ', ' "+price4+ " ') ";
用preparedStatement 这样恐怕有SQL注入威胁
try一下看看报什么错
------解决方案-------------------- 难到是数据类型错了
------解决方案--------------------说说是咋回事?
------解决方案--------------------如果price是money型的话,插入、更新时不用加 ' ',否则报错。
------解决方案--------------------肯定不可以一起写入4个啊!因为你的SQL语句有错嘛!
正确的应该是:
String sql= "INSERT INTO price (employeename,number,price1,price2,price3,price4) Values ( ' "+username2Encode+ " ', ' "+number+ " ', "+price1+ ", "+price2+ ", "+price3+ ", "+price4+ ") ";
注意一下那些是实型那些是字符型的属性
------解决方案--------------------学习中遇到问题请到付费IT问答社区www.nlld.net,采用社会化网络运营,花几元钱提问,回答即得到报酬。网站所有纠纷依法解决
------解决方案--------------------至少 "+number+ "就写错了应该为 ' "+number+ " '
------解决方案--------------------来看下!
------解决方案--------------------你用的是什么数据库啊?
如果是access数据库的话,好像number是他的一个保留字。
如果别的地方没有错的话,把number的列明换了试试。
创建数据库和表的时候尽量不要用过于敏感的字。
------解决方案--------------------关注
------解决方案--------------------你看一下数据库字段类型和长度是否和你要插入的值是否合法