<%@ page language="java" import="java.util.*,java.io.*,java.sql.*" pageEncoding="utf-8"%>
<html>
<body>
<%
try{
String tablename =(String)session.getValue("tablename");
String choose[] = request.getParameterValues("box");
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver").newInstance();
String url = "jdbc:sqlserver://localhost:1433;DatabaseName=newtable";
String user = "sa";
String password = "123";
Connection conn = DriverManager.getConnection(url,user,password);
String sql = "delete from " + tablename + "where choose=?";
PreparedStatement ps = conn.prepareStatement(sql);
out.print("哈哈1");
for (int i=0; i<choose.length; i++) {
out.print("哈哈2");
ps.setString(1,choose[i]);
out.print("哈哈3");
ps.executeUpdate();
}
ResultSet rs = ps.executeQuery();
out.print("哈哈4");
response.sendRedirect("newtable.jsp");
} catch (Exception e) {
e.printStackTrace();
}
%>
</body>
</html>
其中的out.print("哈哈*");是为了测试,看哪一步错了,后来执行完了,打出:
哈哈1哈哈2哈哈3 也就是说ps.executeUpdate();没执行呀,且后面说的错误是:“'choose' 附近有语法错误。”要么就是超出索引。
求救~~~~~~~~~~~~~~~~
<html>
<body>
<%
try{
String tablename =(String)session.getValue("tablename");
String choose[] = request.getParameterValues("box");
Class.forName("com.microsoft.sqlserver.jdbc.SQLServerDriver").newInstance();
String url = "jdbc:sqlserver://localhost:1433;DatabaseName=newtable";
String user = "sa";
String password = "123";
Connection conn = DriverManager.getConnection(url,user,password);
String sql = "delete from " + tablename + "where choose=?";
PreparedStatement ps = conn.prepareStatement(sql);
out.print("哈哈1");
for (int i=0; i<choose.length; i++) {
out.print("哈哈2");
ps.setString(1,choose[i]);
out.print("哈哈3");
ps.executeUpdate();
}
ResultSet rs = ps.executeQuery();
out.print("哈哈4");
response.sendRedirect("newtable.jsp");
} catch (Exception e) {
e.printStackTrace();
}
%>
</body>
</html>
其中的out.print("哈哈*");是为了测试,看哪一步错了,后来执行完了,打出:
哈哈1哈哈2哈哈3 也就是说ps.executeUpdate();没执行呀,且后面说的错误是:“'choose' 附近有语法错误。”要么就是超出索引。
求救~~~~~~~~~~~~~~~~
解决方案 »
- 用过birt请教个交叉表的问题
- 用 Jquery 跳转到 Servlet 后台
- jsp图片显示问题
- 如何将非纯文本格式的文件内容保存到数据库中
- WORK
- 关于applet和jsp的功用(问题很简单,这分很好得)
- java编译器提示没有java.io.的包怎么办??
- 【急等】在Jbuilder7中如何把tomcat的换成较高的版本比如tomcat4.1.8或tomcat4.1.24(急等)
- 求mybatis有关jar包
- BootStrap Table data-show-refresh图标偏小-求大神帮忙解决
- jsp if while的问题
- 对 poi.jar API 封装,以XML报表模板打印xls格式报表,PoiXML.jar帮你轻松搞定!!!!
少空格了吧
String sql = "delete from " + tablename + " where choose=?";
out.print("哈哈4");
你写这两句干嘛!? 程序中根本没有查询语句的啊!那肯定这里要出问题了啊!String sql = "delete from " + tablename + " where choose = ?";这句中where之前要加空格~
你再试试看行不?
where 前加空格
对于CRUD操作:delete,insert,update ->ps.executeUpdate()(更新操作);
select ->ps.executeQuery(查询操作);
"where"前少了一个空格
ps.executeUpdate();
} 在执行这里之前,最好是把sql 语句打印出来,然后拿到数据库里面去执行下,看是不是sql 语句问题就知道啦