日期:2014-05-20  浏览次数:20745 次

为什么JDBC我更新数据的时候会出错?
为了方便大家,我只给出了部分代码。
try
{
con=DriverManager.getConnection(connectionUrl); //创建数据库连接
Statement stat=con.createStatement();
//定义变量保存用户输入的数据
String name=txtName.getText().trim();
int icode=Integer.parseInt(txtCode.getText().trim());
float java=Float.parseFloat(txtJava.getText().trim());
float web=Float.parseFloat(txtWeb.getText().trim());
float english=Float.parseFloat(txtEnglish.getText().trim());
float vb=Float.parseFloat(txtVB.getText().trim());
float oracle=Float.parseFloat(txtOracle.getText().trim());
String updateStr="insert into info(Name,Code,scoreJava,scoreWeb,scoreVB,scoreEnglish,scoreOracle) values('"+name+"',icode,java,web,vb,english,oracle)";
//String updateStr="insert into info(Name,Code,scoreJava,scoreWeb,scoreVB,scoreEnglish,scoreOracle)values('test',10,10,10,10,10,10)";
stat.executeUpdate(updateStr);
}
catch(SQLException ex)
{
System.out.println("发生异常了:"+ex.getMessage());
}

如果大家能帮我找出错误,我一定会十分的感谢的。

这儿是数据库和全部的代码。http://pan.baidu.com/share/link?shareid=153984&uk=370740803
------最佳解决方案--------------------
String updateStr="insert into info(Name,Code,scoreJava,scoreWeb,scoreVB,scoreEnglish,scoreOracle) values('"+name+"',icode,java,web,vb,english,oracle)"; 

这行代码后面的参数有问题,应该变成 
String updateStr="insert into info(Name,Code,scoreJava,scoreWeb,scoreVB,scoreEnglish,scoreOracle) values('"+name+"','"+icode+"','"+java+"','"+web+"','"+vb+"','"+english+"','"+oracle+"')"; 

------其他解决方案--------------------
String updateStr="insert into info(Name,Code,scoreJava,scoreWeb,scoreVB,scoreEnglish,scoreOracle) values('"+name+"',icode,java,web,vb,english,oracle)"; 

这行代码后面的参数有问题,应该变成
------其他解决方案--------------------
代码有问题 insert into values('','','','').应该是这样的,少了''.