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

关于Java向数据库中插入数据的问题,求助
这是一个仿QQ的程序,在登陆时可以访问服务器端的数据库,而注册时用如下语句却出现错误。
顺序,字段类型都没错,用户名和密码也都没错
int m=stat.executeUpdate("INSERT INTO Login(QQ号码,用户名,QQ密码) VALUES(s1,getInf1,getInf2)");
错误信息:java.sql.SQLException: [Microsoft][ODBC Microsoft Access Driver] 参数不足,期待是 3。
at sun.jdbc.odbc.JdbcOdbc.createSQLException(Unknown Source)
......
哪位高手能告诉我这是为什么吗?

------解决方案--------------------
看你的sql语句,觉得有问题stat.executeUpdate("INSERT INTO Login(QQ号码,用户名,QQ密码) VALUES(s1,getInf1,getInf2)"); 
你的"QQ号码,用户名,QQ密码"这些字段都是字符类型吗?你传递的"s1,getInf1,getInf2"都是引入的参数吗?如果都是字符和参数,那么,应该这样写的
stat.executeUpdate("INSERT INTO Login(QQ号码,用户名,QQ密码) VALUES('"+s1+"','"+getInf1+"','"+getInf2+"')");
------解决方案--------------------
values 传递的参数不对。
确定一下s1,getInf1,getInf2是变量还是参数。。。