jsp servlet 数据库

来源:百度知道 编辑:UC知道 时间:2024/06/18 14:13:02
String sql1;
for(int j=0;j<i;j++){
String jingdian_id2 = req.getParameter("jingdian_id2"+(j+1));
String distance = req.getParameter("distance"+(j+1));
sql1 = "insert into distance(jingdian_id1,jingdian_id2,distance) values('"+jingdian_id1+"','"+jingdian_id2+"','"+distance+"')";stmt.executeQuery(sql1);
}
我想这样来对数据库进行重复插入,但是每到执行到stmt.executeQuery(sql1);
就报错抛异常 怎么回事啊,向数据库插记录不是这一条吗stmt.executeQuery(sql1);

Class.forName("com.mysql.jdbc.Driver");
Connection conn=DriverManager.getConnection("jdbc:mysql://"+host+"/"+dbname,username,password);
Statement Stmt=conn.createStatement();
ResultSet rs=Stmt.executeQuery(sql);
这是基本的数据库操作方法
大概流程就是加载驱动类,创建连接,执行数据库操作,关闭

你把stmt.executeQuery(sql1);这句换成Query q = this.getSession.createQuery(hql);
q.executeUpdate();
this.getSession().beginTransaction().commit();
如果你是用三个框架整合的话更简单
直接用
this.getSession().save();
this.getSession().beginTransaction().commit();

executeQuery();是查询语句
如果你分不清应该用什么语句,
你可以用execute(sql); 它可以执行增删改查的操作,只是返回时boolean类型

executeQuery应该改为executeUpdate,写为int result=stmt.executeUpdate(sql1)

stmt.execute(sql1); 这个是执行insert