日期:2014-05-20  浏览次数:20647 次

跪求jsp高手进来看看!
<%
String sql="DELETE FROM user WHERE bh=?";
[color=#FF0000][/color]String id=request.getParameter("id");
int number=Integer.parseInt(id);[/color]
try
{
Class.forName("com.myslq.jdbc.Driver");
Connection c=DriverManager.getConnection("jdbc:mysql://localhost:3306/test","root","mysql");
PreparedStatement ps=c.prepareStatement(sql);
ps.setInt(1, number);
int result=ps.executeUpdate(); if(result==1)
{
out.print("删除成功!");
response.sendRedirect("userlist.jsp");
}
else
{
out.print("删除失败!");
}
c.close();

ps.close();

}
catch(Exception e)
{
e.printStackTrace();
}

%>
红色字体的是在不知道什意思
这个程序功能是点击删除后删除数据库中的一行数据

------解决方案--------------------
这。。。 你不会Java编程的概念都不是很清楚吧?
PrepareStatement接口继承并扩展了Statement接口,用来执行动态的SQL语句
自己百度下PreparedStatement
------解决方案--------------------
LZ是不明白PreparedStatement还是不明白ps.setInt(1, number);这种赋值方式
------解决方案--------------------
ps.setInt(1, number)是把number传到DELETE FROM user WHERE bh= ? 的问号里。。。


int result=ps.executeUpdate(); 是执行这个sql语句,然后返回影响的行数。。如果删除一条就返回1。。


------解决方案--------------------

探讨

ps.setInt(1, number)是把number传到DELETE FROM user WHERE bh= ? 的问号里。。。


int result=ps.executeUpdate(); 是执行这个sql语句,然后返回影响的行数。。如果删除一条就返回1。。

------解决方案--------------------
Lz应该把数据库那部分内容再看看啊
------解决方案--------------------
探讨
ps.setInt(1, number)是把number传到DELETE FROM user WHERE bh= ? 的问号里。。。


int result=ps.executeUpdate(); 是执行这个sql语句,然后返回影响的行数。。如果删除一条就返回1。。

------解决方案--------------------
探讨

ps.setInt(1, number)是把number传到DELETE FROM user WHERE bh= ? 的问号里。。。


int result=ps.executeUpdate(); 是执行这个sql语句,然后返回影响的行数。。如果删除一条就返回1。。

------解决方案--------------------
PreparedStatement效率高而且还避免SQL注入漏洞,搜下就很多帖子有解释。