注册 登录
编程论坛 J2EE论坛

[求助]无法进行数据库插入操作!(附代码)

yoyodo 发布于 2006-03-22 14:10, 751 次点击

<%@page language = "java"%>
<%@page contentType="text/html;charset=gb2312"%>
<%@page import="java.sql.*"%>
<%
//下面四句代码用于连接数据源
String url = "jdbc:odbc:student"; //定义数据源
String driver = "sun.jdbc.odbc.JdbcOdbcDriver"; //定义jdbc-odbc驱动
Class.forName(driver); //装载驱动
Connection conn = DriverManager.getConnection(url); //连接数据源
//获取数据库中的记录
Statement sqlStatement = conn.createStatement(); //定义sql语句对象
String stuNum = request.getParameter("stuNum"); //得到reg1.jsp中stuNum的值
String stuName = request.getParameter("stuName"); //得到reg1.jsp中stuName的值
String sex = request.getParameter("sex"); //得到reg1.jsp中sex的值
String qq = request.getParameter("qq"); //得到reg1.jsp中QQ的值
String ficq = request.getParameter("ficq"); //得到reg1.jsp中FICQ的值
String email = request.getParameter("email"); //得到reg1.jsp中email的值
String userName = request.getParameter("userName"); //得到reg1.jsp中useName的值
String password1 = request.getParameter("password1"); //得到reg1.jsp中password的值

String sql;
sql = "insert into student(stuNum,stuName,sex,qq,ficq,email,userName,password) values ("
+ stuNum + ",'" + stuName + "','" + sex + "','" + "'," + qq +
"," + ficq + ",'" + email + "','" + userName + "','" + password1 + "')";
//Statement smt = conn.createStatement();
out.println(sql);
sqlStatement.executeUpdate(sql);
//查询语句操作
//sql = "select * from student where stuNum = 22";
//ResultSet rs = sqlStatement.executeQuery(sql);
//if (rs.next()) {
// String r = rs.getString("stuNum");
// out.println(r);
//}
sqlStatement.close();
conn.close();
%>
当注释//sqlStatement.executeUpdate(sql);时,打印出"insert into student (stuNum,stuName,sex,qq,ficq,email,userName,password) values (222,'jin','null','',222,22,'22','jin','jin') ",
可以进行查询操作。进行插入操作出错:无法显示网页。
请问这是怎么回事?

6 回复
#2
miss_friend2006-03-22 23:08
sql = "insert into student(stuNum,stuName,sex,qq,ficq,email,userName,password) values ("
+ stuNum + ",'" + stuName + "','" + sex + "','" + "'," + qq +
"," + ficq + ",'" + email + "','" + userName + "','" + password1 + "')";
这句中在 values (" + stuNum +中少了一'应该是values ('" + stuNum
你试试这样可以吗?
#3
miss_friend2006-03-22 23:09
你后面还少一个'
#4
miss_friend2006-03-22 23:11
字符串要用'这个引起来的你看看好像不止这两处呀
#5
dreame2006-03-23 14:25
插入,修改,删除建议用executeUpdate ,查询用executeQuery
#6
shuimu2672006-03-23 18:48
除了前面讲的那些单引号问题之外。你就是创建命令集的sqlStatement.executeUpdate(sql);
是个错误,你试着把这个改了,然后再运行。对了,你用的什么什么开发工具来做的
#7
〃雙掱ぴ搋兜づ2006-03-24 16:52

把错误信息发上来。
引号太乱了。看的眼都花了

1