如何删除一条记录?

xuyang198711 2009-10-02 04:26:21
我用jsp写的页面中有一列一列的记录,每条记录后面都对应着一个“删除”,如何写这个“删除”,使一点击这个“删除”就可以直接从数据库中删除这条记录,同时刷新这个页面?
...全文
632 33 打赏 收藏 转发到动态 举报
写回复
用AI写文章
33 条回复
切换为时间正序
请发表友善的回复…
发表回复
xiaokui604 2011-05-03
  • 打赏
  • 举报
回复
说了这么多都还是没有解决LZ的问题!
Rainyzq 2009-10-10
  • 打赏
  • 举报
回复

点击“删除”绑定一个id(主键),把id传递到后台实现类里用sql语句删除这条记录。
liangwansheng 2009-10-09
  • 打赏
  • 举报
回复
通过jsp传一个ID,当然了,这个ID是和这条记录在数据库里存的ID对应的,把ID传到后台,通过sql删掉
再通过查询那个方法回到页面就相当于刷新了。
haoren_e 2009-10-09
  • 打赏
  • 举报
回复
[Quote=引用 30 楼 liangwansheng 的回复:]
通过jsp传一个ID,当然了,这个ID是和这条记录在数据库里存的ID对应的,把ID传到后台,通过sql删掉
再通过查询那个方法回到页面就相当于刷新了。
[/Quote]说得对
大家都是从基础过来的,自己提高了之后,也不该有理由这样说吧……
lz加油!
pangpanglovezz 2009-10-09
  • 打赏
  • 举报
回复
根据ID 就可以删除 如果你用的是jsp那就用servlet做吧 可以跳回本页面就可以刷新了
shuangfang 2009-10-09
  • 打赏
  • 举报
回复
根据一个id来删除就可以了
lodgod 2009-10-09
  • 打赏
  • 举报
回复
Ajax就可以
lodgod 2009-10-09
  • 打赏
  • 举报
回复
把主键传到后台,在用sql语句删除就好了呀
xsm 2009-10-08
  • 打赏
  • 举报
回复
<%@ page contentType="text/html;charset=GBK" %> 
<%@ page language="java" import="java.sql.*" %>
<head>
<link rel="stylesheet" type="text/css" href="../css.css" />
</head>
<center>
<table width=100%><tr><td align=center valign=top>
<script language="javascript">

function chec(){
var i;
var f=0;
for(i=0;i<document.mysel.elements.length-1;i++){
if(document.mysel.selectcheck[i].checked==true){
f=f+1;
}
}
alert("请选择要删除的条目!");
alert(f);
document.mysel.submit();

}


function allselect(){
var i;
if(document.mysel.temp.checked){
for(i=0;i<document.mysel.elements.length-1;i++){
document.mysel.selectcheck[i].checked=true;
}
}else
{
for(i=0;i<document.mysel.elements.length-1;i++){
document.mysel.selectcheck[i].checked=false;
}

}
}
function newwin(url) {
var newwin=window.open(url,"newwin","toolbar=no,location=no,directories=no,status=no, menubar=no,scrollbars=yes,resizable=yes,width=600,height=450");
newwin.focus();
return false;
}
</script>
<script LANGUAGE="javascript">
function submit10()
{
self.location.replace("fenye1.jsp")
}
</script>
<%
java.sql.Connection sqlCon;
java.sql.Statement sqlStmt;
java.sql.ResultSet sqlRst;
java.lang.String strCon;
java.lang.String strSQL;
int intPageSize;
int intRowCount;
int intPageCount;
int intPage;
java.lang.String strPage;
int i;
intPageSize = 20;
strPage = request.getParameter("page");
if(strPage==null){
intPage = 1;
}
else{
intPage = java.lang.Integer.parseInt(strPage);
if(intPage<1) intPage = 1;
}
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
strCon ="jdbc:odbc:Driver={MicroSoft Access Driver (*.mdb)};DBQ="+application.getRealPath("/database/winnetdata.mdb");
sqlCon = java.sql.DriverManager.getConnection(strCon);
sqlStmt = sqlCon.createStatement(java.sql.ResultSet.TYPE_SCROLL_INSENSITIVE,java.sql.ResultSet.CONCUR_READ_ONLY);//准备SQL语句
strSQL = "select doc_id,doc_title,doc_kind,doc_origin,doc_releasedate from winet_technologydoc order by doc_id desc";
sqlRst = sqlStmt.executeQuery(strSQL);
sqlRst.last();
intRowCount = sqlRst.getRow();
intPageCount = (intRowCount+intPageSize-1) / intPageSize;
if(intPage>intPageCount) intPage = intPageCount;
%>
<table border=1" cellspacing="0" cellpadding="0" width=100%>
<form name="mysel" method="post" action="itdoc_alldelete.jsp">
<tr>
<td align="left" colspan="8" bgcolor="#A4B6D7"></td>

</tr>
<tr>
<td align="center" bgcolor="A4B6D7"><input type="checkbox" name="temp" onclick="allselect()">全选<br/><input type=submit value="删除"></td>
<td align="center" bgcolor="A4B6D7">内部编号</td>
<td align="center" bgcolor="A4B6D7">标题</td>
<td align="center" bgcolor="A4B6D7">类型</td>
<td align="center" bgcolor="A4B6D7">来源</td>
<td align="center" bgcolor="A4B6D7">日期</td>
<td align="center" bgcolor="A4B6D7">修改</td>
<td align="center" bgcolor="A4B6D7">删除</td>
</tr>
<%
if(intPageCount>0){
sqlRst.absolute((intPage-1) * intPageSize + 1);
i = 0;
int j=1;
String tcolor=null;
String id,pname,pkind,pprice,pimages,pdoc,pforwho;
while(i<intPageSize && !sqlRst.isAfterLast()){
j=j*-1;
if(j==1)
tcolor="#EBECF3";
else
tcolor="#ffffff";


id=sqlRst.getString(1);
pname=sqlRst.getString(2);
pkind=sqlRst.getString(3);
pforwho=sqlRst.getString(4);
pprice=sqlRst.getString(5);
%>
<tr>
<td bgcolor=<%=tcolor%>><input type="checkbox" name="selectcheck" value=<%=id%>></td>
<td bgcolor=<%=tcolor%>><%=id%></td>
<td bgcolor=<%=tcolor%>><%=pname%></td>
<td bgcolor=<%=tcolor%>><%=pkind%></td>
<td bgcolor=<%=tcolor%>><%=pforwho%></td>
<td bgcolor=<%=tcolor%>><%=pprice%></td>
<td bgcolor=<%=tcolor%>><a target=rbottom href="itdoc_modify_pro.jsp?docID=<%=id%>" align="center">修改</a></td>
<td bgcolor=<%=tcolor%>><a target=rbottom href="itdoc_do_delete.jsp?docID=<%=id%>" align="center">删除</a></td>
</tr>

<%
sqlRst.next();
i++;
}
}
%>
</form>
</table>
<form method="POST" action="itdoc_manage.jsp">
第<%=intPage%>页 共<%=intPageCount%>页


<%if(intPage>1){%><a href="itdoc_manage.jsp?page=<%=intPage-1%>">

上一页</a><%}%>

<%if(intPage<intPageCount){%><a

href="itdoc_manage.jsp?page=<%=intPage+1%>">下一页

</a><%}%>
转到第:
<select name="page">
<%for(int sm=1;sm<=intPageCount;sm++){%>
<option value=<%=sm%>><%=sm%></option>
<%}%>
</select> 页
<span><input class=buttonface type=submit value=GO name=cndok></span>
</form>
<%
sqlRst.close();
sqlStmt.close();
sqlCon.close();
%>

</td></tr></table>
</center>


//每行末尾显示修改、删除等按钮


//ITDOC_DO_DELETE.JSP
<%@ page import="java.sql.*"%>
<head>
<link rel="stylesheet" type="text/css" href="../css.css" />
</head>
<%! int all,i,m_count;
String odbcQuery;
%>
<%
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
String url="jdbc:odbc:Driver={MicroSoft Access Driver (*.mdb)};DBQ="+application.getRealPath("./database/winnetdata.mdb");
Connection odbcconn=DriverManager.getConnection(url);
Statement odbcstmt=odbcconn.createStatement();
odbcQuery="delete From winet_technologydoc where doc_id="+request.getParameter("docID");
odbcstmt.executeUpdate(odbcQuery);

out.println("<table width=100% align=center><tr><td idth=100% align=center>已删除 <A href=itdoc_manage.jsp>返回</A></td></tr></table>");

odbcstmt.close();
odbcconn.close();
%>


//通过ID调用ITDOC_DO_DELETE.JSP的删除功能。
zhanghai921 2009-10-04
  • 打赏
  • 举报
回复
获取该记录对应的id,传到后台在数据库中delete掉该记录后再返回到这个页面。#11楼说了,要仔细检查这个id是不是你要删的,不要搞错了啊
zhaoqiang4153 2009-10-04
  • 打赏
  • 举报
回复
把id传过去啊
uri?id = "sql_id"
再在你的业务逻辑层里面根据它删除指定的数据就好了
lizhenq_1 2009-10-04
  • 打赏
  • 举报
回复
传个ID到后台,然后根据ID删除就行啦
  • 打赏
  • 举报
回复
可以通过ID来删除,你在删除链接上把ID传到后台然后通过ID来删除一条记录。重新刷新页面要用Response.Redirect()这样就会重新发送一次请求刷新页面。这样就可以实现你点删除冒一个字段刷新一下页面的效果,也用不到Ajax。
yasony 2009-10-04
  • 打赏
  • 举报
回复
用A标签绑定主建ID
传回本页面,

删除功能应该很简单就写好了
day156 2009-10-04
  • 打赏
  • 举报
回复
看看书吧,很多例子
zml2009 2009-10-04
  • 打赏
  • 举报
回复
飘过
lsdb 2009-10-04
  • 打赏
  • 举报
回复
传个id过去,用sql语句直接就删了还有看你的dao层是用JDBC还是Hibernate实现的,因为这两种方式的sql语句有点不同
chenjing1121 2009-10-03
  • 打赏
  • 举报
回复
这是很基础的题目了。
teemai 2009-10-03
  • 打赏
  • 举报
回复
2楼说的很清楚了
  • 打赏
  • 举报
回复
比如检查一下当前用户是否有权限把这个 ID 的记录删除等等之类的检查。
加载更多回复(13)

81,092

社区成员

发帖
与我相关
我的任务
社区描述
Java Web 开发
社区管理员
  • Web 开发社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧