注册 登录
编程论坛 J2EE论坛

[求助]数据库的问题insert语句

keddy 发布于 2006-03-17 11:54, 640 次点击

Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver").newInstance();

String url="jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=user_db";
String user="sa";
String password="admin";

Connection conn=DriverManager.getConnection(url,user,password);
Statement stmt=conn.createStatement();

String sql="insert into message(name) values('"+name+"')";
stmt.executeQuery(sql);

stmt.close();
conn.close();


但就是插不到数据库中去,报错是:
javax.servlet.ServletException: [Microsoft][SQLServer 2000 Driver for JDBC]No ResultSet set was produced.


哪位高手给指点一下

[此贴子已经被作者于2006-3-17 13:15:02编辑过]

4 回复
#2
zhangrui_fd2006-03-17 22:20
<%@ page contentType="text/html;charset=gb2312"%>
<%@ page import="java.sql.*"%>
<html>
<body>
<%Class.forName("com.microsoft.jdbc.sqlserver.SQLServerDriver").newInstance();
String url="jdbc:microsoft:sqlserver://localhost:1433;DatabaseName=pubs";
//pubs为你的数据库的
String user="sa";
String password="";
Connection conn= DriverManager.getConnection(url,user,password);
Statement stmt=conn.createStatement(ResultSet.TYPE_SCROLL_SENSITIVE,ResultSet.CONCUR_UPDATABLE);
String sql="select * from test";
ResultSet rs=stmt.executeQuery(sql);
while(rs.next()) {%>
您的第一个字段内容为:<%=rs.getString(1)%>
您的第二个字段内容为:<%=rs.getString(2)%>
<%}%>
<%out.print("数据库操作成功,恭喜你");%>
<%rs.close();
stmt.close();
conn.close();
%>
</body>
</html>

你对照上面的调试吧,我装的是MySQL,没办法试。
#3
wangtaobig2006-03-18 11:51

错误在下面:
String sql="insert into message(name) values('"+name+"')";
stmt.executeQuery(sql);

你的第一句没有问题,错在第二句,你是添加数据,应该用stmt.executeUpdate(sql);
明白了吗?

#4
redking9992006-03-20 20:29
在stmt.executeQuery只能作为查看
不能修改
当做修改、删除、插入的时候都得换成stmt.executeUpdate
#5
keddy2006-03-21 11:14

谢谢各位!

1