大家帮我看一下啊,我写了两个文件.1.jsp显示数据库中的记录并提交要删除的数据.
2.jsp是的作用是删除数据,并显示删除后的记录.
运行时tomcat 不报错.两个页面里的数据库记录都能显示.问题是删除不了.数据记录前后就没有变化.
我把两个文件传上来,大家帮我看一下吧,谢谢了....
1.jsp
---------------------------------------------------------
<%@ page contentType="text/html; charset=gb2312" %>
<%@ page import="java.sql.*" %>
<html>
<body bgcolor=pink >
<font size=3>
<form action="160.jsp" method=post>
<p>输入删记录的学号:
<input type="text" name="number">
<p>
<input type="submit" name="b" value="提交">
<p>数据库删除前的数据记录时:
<%
int number;
Connection con;
Statement sql;
ResultSet rs;
try{
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
}
catch(ClassNotFoundException e)
{
out.print("加载驱动失败!");
}
try{
con=DriverManager.getConnection("jdbc:odbc:chenfeng"," "," ");
sql=con.createStatement();
rs=sql.executeQuery("SELECT * FROM biao1");
out.print("<table border=1>");
out.print("<tr>");
out.print("<th width=100 >学号");
out.print("<th width=100 >姓名");
out.print("<th width=50 >数学成绩");
out.print("<th width=50 >英语成绩");
out.print("<th width=50 >物理成绩");
out.print("<tr>");
while(rs.next())
{
out.print("<tr>");
out.print("<td>"+rs.getInt(1)+"</td>");
out.print("<td>"+rs.getString(2)+"</td>");
out.print("<td>"+rs.getInt(3)+"</td>");
out.print("<td>"+rs.getInt(4)+"</td>");
out.print("<td>"+rs.getInt(5)+"</td>");
out.print("</tr>");
}
out.print("</table>");
con.close();
}
catch(SQLException e1)
{
out.print(e1);
}
%>
</form>
</font>
</body>
</html>
----------------解决方案--------------------------------------------------------
更正一下,上边的<form action="160.jsp" method=post>写错了.应该是2.jsp
以下是2.jsp
---------------------------------------------------------------------
<%@ page contentType="text/html; charset=gb2312" %>
<%@ page import="java.sql.*" %>
<html>
<body bgcolor=pink >
<font size=3>
<% String number=request.getParameter("number");
if(number==null)
{
number=" ";
}
Connection con;
Statement sql;
ResultSet rs;
try{
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
}
catch(ClassNotFoundException event)
{
out.print("加载驱动失败!");
}
try{
con=DriverManager.getConnection("jdbc:odbc:chenfeng"," "," ");
sql=con.createStatement();
String del="delete from biao1 where '学号'"+"="+"'"+number+"' ";
sql.executeUpdate(del);
%>
<p>添加新记录后的表:
<%
rs=sql.executeQuery("select * FROM biao1 ");
out.print("<table border=1>");
out.print("<tr>");
out.print("<th width=100 >学号");
out.print("<th width=100 >姓名");
out.print("<th width=50 >数学成绩");
out.print("<th width=50 >英语成绩");
out.print("<th width=50 >物理成绩");
out.print("<tr>");
while(rs.next())
{
out.print("<tr>");
out.print("<td>"+rs.getInt(1)+"</td>");
out.print("<td>"+rs.getString(2)+"</td>");
out.print("<td>"+rs.getInt(3)+"</td>");
out.print("<td>"+rs.getInt(4)+"</td>");
out.print("<td>"+rs.getInt(5)+"</td>");
out.print("</tr>");
}
out.print("</table>");
con.close();
}
catch(SQLException event)
{
out.print(event);
}
%>
</font>
</body>
</html>
----------------解决方案--------------------------------------------------------
大家帮我看看,谢谢了.
----------------解决方案--------------------------------------------------------
String del="delete from biao1 where 学号="+number;
[此贴子已经被作者于2006-8-4 10:44:44编辑过]
----------------解决方案--------------------------------------------------------
我想你应该是想删除哪个点哪个,但String number=request.getParameter("number");的number从哪获取呀?
算了,还是等你来了再说吧,我一个人说也没意思!!!有很多问题.
顺便说下楼主,这是JSP的问题,最好是贴在JSP区.
[此贴子已经被作者于2006-8-4 11:37:12编辑过]
----------------解决方案--------------------------------------------------------
既然:1.jsp显示数据库中的记录并提交要删除的数据.2.jsp的作用是删除,那在2.jsp中删除成功后直接提交到1.jsp中不就行了?干嘛还在2.jsp的后面又作一次显示数据库中的记录???
----------------解决方案--------------------------------------------------------
其实记录在那显示都无所谓.关键是现在删不了数据. 是不是删除语句有问题呢?? 可是如果有问题的话,tomcat为什么不报错呢???
----------------解决方案--------------------------------------------------------
我想你应该是想删除哪个点哪个,但String number=request.getParameter("number");的number从哪获取呀?
算了,还是等你来了再说吧,我一个人说也没意思!!!有很多问题.
顺便说下楼主,这是JSP的问题,最好是贴在JSP区.
number是从1.jsp的表单中获取的.
----------------解决方案--------------------------------------------------------
我的QQ 275923233
----------------解决方案--------------------------------------------------------
在1.jsp中每项做个删除的链接(用循环),链接到2.jsp,然后在1.jsp中获取数据表中while(rs.next()&i<=20){
i++ ;
String id = rs.getString("学号") ;
.............
当点击哪项删除时提交到2.jsp并把id做为参数也传过去,也就是href="2.jsp?id=<%=id%>"
然后在2.jsp中获得String id = request.getParameter("id") ;
然后String del="delete from biao1 where 学号="+id;
............
并response.sendRedirect("1.jsp");
----------------解决方案--------------------------------------------------------