注册 登录
编程论坛 J2EE论坛

[求助]JAVA 插入新的数据到access出错

wct 发布于 2007-09-09 19:11, 532 次点击

String sql="update stu set name="+"'"+stu.getname()+"'"+",sex="+"'"+stu.getsex()+"'"+",department="+"'"+stu.getdepartment()+"'"
+",address="+"'"+stu.getaddress()+"'"+",telephone="+"'"+stu.gettelephone()+"'"+",email="+"'"+stu.getemail()+"'" +",qq="
+"'"+stu.getqq()+"'"+",chinese="+"'"+stu.getchinese()+"'"+",math="+"'"+stu.getmath()+"'"+",english="+"'"+stu.getenglish()+"'"+"where schoolnum="+"'"+stu.getschoolnum()+"'";

报错 java.sql.SQLException: [Microsoft][ODBC Microsoft Access Driver] 语法错误 (操作符丢失) 在查询表达式 'sdg','sdg','sdg',22,22,22)' 中。
进行修改  等都正常  但插入时出错
请高手指正

5 回复
#2
天涯海角2007-09-10 21:05
报错 java.sql.SQLException: [Microsoft][ODBC Microsoft Access Driver] :

1.检查一下数据源有无问题。
2.检查一下创建数据库连接是否正确。包括连接时的数据源名称,用户名,密码等。
3.插入新的数据,应该使用insert into 表(字段列表)values(值列表)
#3
wct2007-09-10 22:04

非常抱歉 粘贴时出现了错误
应该是String sql="INSERT INTO stu (schoolnum,name,sex,department,address,telephone,email,qq,chinese,math,english) VALUES("+"\'"+stu.getschoolnum()
+"\'" +","+"\'"+stu.getname()+"\'"+","+"\'"+stu.getsex()+"\'"+","+"\'"+stu.getdepartment()+"\'"+","+"\'"+stu.getaddress()+"\'"+","+
stu.gettelephone()+"\'"+","+"\'"+stu.getemail()+"\'"+","+"\'"+stu.getqq()+"\'"+","+stu.getchinese()+","+stu.getmath()
+","+stu.getenglish()+")";

你说的1 2应该没错 应该是别的错误 但我实在找不出 希望指正

#4
atsjun2007-09-10 22:48
="INSERT INTO stu (schoolnum,name,sex,department,address,telephone,email,qq,chinese,math,english) VALUES("+"\'"+stu.getschoolnum()
+"\'" +","+"\'"+stu.getname()+"\'"+","+"\'"+stu.getsex()+"\'"+","+"\'"+stu.getdepartment()+"\'"+","+"\'"+stu.getaddress()+"\'"+","+stu.gettelephone()+"\'"+","+"\'"+stu.getemail()+"\'"+","+"\'"+stu.getqq()+"\'"+","+stu.getchinese()+","+stu.getmath()
+","+stu.getenglish()+")";
红色部分是不是少了个 单引号?
如果sql语句有问题就用System打印到控制台看看拉。。。。

#5
wct2007-09-11 08:03

原程序里面没少
打印的结果为:
INSERT INTO stu (schoolnum,name,sex,department,address,telephone,email,qq,chinese,math,english) VALUES('44','4','m','4','4',4','4','44',22,22,22)

#6
wct2007-09-11 08:04
希望指正
1