delete
delete可以删除多条记录,可以使用where设定条件表达式,符合条件的记录才做删除。
语法如下:
delete [表名.*]
from 表名
where 条件表达式
使用drop陈述式从数据库中删除整个表,包括失去表的结构;使用delete则仅删除记录资料,但仍然保留表的结构和表的字段、索引的属性。
删除与其它表有关联的记录时,将会删除在表名之中与此删除记录有关的关联。例如,客户表名与订单表之间有关联,从客户资料中删除一条记录,相对应之订单记录也会被删除。
使用delete删除的记录,无法复原。您可以先使用select使用相同的where 条件表达式检验查询的结果,然后执行delete删除。
让我们看一个在asp程式码当中使用这个sql指令的例子。
譬如asp程式码rs8.asp如下,[delete from 产品 where 代号 =c2000],删除代号为c2000的记录:
<%
set conn1 = server.createobject("adodb.connection")
conn1.open "dbq="& server.mappath("ntopsamp.mdb") &";driver={microsoft access driver (*.mdb)};driverid=25;fil=ms access;"
sql = "delete from 产品 where 代号 =c2000"
set a = conn1.execute(sql)
set rs3 = server.createobject("adodb.recordset")
sql = "select * from 产品 order by 种类 desc"
rs3.open sql,conn1,1,1,1
%>
<table colspan=8 cellpadding=5 border=0>
<tr>
<td align=center bgcolor="#800000"><font color="#ffffff">代号</font></td>
<td align=center bgcolor="#800000"><font color="#ffffff">名称</font></td>
<td align=center bgcolor="#800000"><font color="#ffffff">价格</font></td>
<td align=center bgcolor="#800000"><font color="#ffffff">数量</font></td>
</tr>
<% do while not rs3.eof %>
<tr>
<td bgcolor="f7efde" align=center><%= rs3("代号")%></td>
<td bgcolor="f7efde" align=center><%= rs3("名称")%></td>
<td bgcolor="f7efde" align=center><%= rs3("价格")%></td>
<td bgcolor="f7efde" align=center><%= rs3("数量")%></td>
</tr>
<%
rs3.movenext
loop
rs3.close
conn1.close
%>
</table>
以上的 asp程式码rs8.asp,在用户端使用浏览器,浏览执行的结果,显示删除代号为c2000的记录。
转载请保留出处http://asp123.on.net.cn
