java关于stmt.executeQuery的执行语句

执行SQL语句时总出错
想把nimak.user表中的user=root一行的name的值更改为“周”
本地mySQL数据库

user CHAR(16)
name VARCHAR(40)

String SQL_Update = new String();
SQL_Update = "UPDATE nimak.user SET name = \"周\" WHERE user = \"root\"";
try
{
。。。。。。//连接数据库的代码省略
Statement stmt = con.createStatement();
ResultSet rs = stmt.executeQuery(SQL_Update); //该行报错
}
catch(Exception e)
{
System.out.println("无法连接数据库!");
e.printStackTrace();
}

请问SQL_Update要怎么改?

Update 语句是用 stmt.executeUpdate() 方法,而不是用 executeQuery

另外,

String SQL_Update = new String();
SQL_Update = "UPDATE nimak.user SET name = \"周\" WHERE user = \"root\"";

这两行不用这样写,这样写相当于初始化了两个字符串了,直接这样写:

String SQL_Update = "UPDATE nimak.user SET name = \"周\" WHERE user = \"root\"";
温馨提示:内容为网友见解,仅供参考
第1个回答  2013-06-18
表明叫user?
user是关键字 将其加[] 即:[user]追问

是表名叫user,自己建的表
应该不是这个问题
SQL_Select = "SELECT * FROM nimak.user WHERE user = \"root\"";这个语句都可以正常执行

第2个回答  2013-06-18
能不能看看你报的什么错 截个图过来
相似回答