⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 mdmthdeletex.htm

📁 ADO使用手册,非常详细
💻 HTM
字号:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2 Final//EN">
<HTML dir=ltr>
<HEAD>
<META HTTP-EQUIV="Content-Type" Content="text/html; charset=gb2312"><title>Delete 方法范例</title>
<style>@import url(msdn_ie4.css);</style>
</HEAD>
<BODY>
<h3><a name="mdmthdeletex"></a>Delete 方法范例</h3>
<p>
该范例使用 <b>Delete</b> 方法从 <b>Recordset</b> 删除指定的记录。</p>
<pre>Public Sub DeleteX()   Dim rstRoySched As ADODB.Recordset
   Dim strCnn As String
   Dim strMsg As String
   Dim strTitleID As String
   Dim intLoRange As Integer
   Dim intHiRange As Integer
   Dim intRoyalty As Integer   ' 打开 RoySched 表。
      strCnn = "Provider=sqloledb;" &amp; _
      "Data Source=srv;Initial Catalog=pubs;User Id=sa;Password=; "
   Set rstRoySched = New ADODB.Recordset
   rstRoySched.CursorLocation = adUseClient
   rstRoySched.CursorType = adOpenStatic
   rstRoySched.LockType = adLockBatchOptimistic
   rstRoySched.Open "SELECT * FROM roysched " &amp; _
      "WHERE royalty = 20", strCnn, , , adCmdText   ' 提示删除记录。
   strMsg = "Before delete there are " &amp; _
      rstRoySched.RecordCount &amp; _
      " titles with 20 percent royalty:" &amp; vbCr &amp; vbCr
   Do While Not rstRoySched.EOF
      strMsg = strMsg &amp; rstRoySched!title_id &amp; vbCr
      rstRoySched.MoveNext
   Loop
   strMsg = strMsg &amp; vbCr &amp; vbCr &amp; _
      "Enter the ID of a record to delete:"
   strTitleID = UCase(InputBox(strMsg))   ' 移动到记录并保存数据以使其可被恢复。
   rstRoySched.Filter = "title_id = '" &amp; strTitleID &amp; "'"
   intLoRange = rstRoySched!lorange
   intHiRange = rstRoySched!hirange
   intRoyalty = rstRoySched!royalty   ' 删除记录。
   rstRoySched.Delete
   rstRoySched.UpdateBatch   ' 显示结果。
   rstRoySched.Filter = adFilterNone
   rstRoySched.Requery
   strMsg = ""
   strMsg = "After delete there are " &amp; _
      rstRoySched.RecordCount &amp; _
      " titles with 20 percent royalty:" &amp; vbCr &amp; vbCr
   Do While Not rstRoySched.EOF
      strMsg = strMsg &amp; rstRoySched!title_id &amp; vbCr
      rstRoySched.MoveNext
   Loop
   MsgBox strMsg   ' 恢复数据,因为这只是演示。
   rstRoySched.AddNew
   rstRoySched!title_id = strTitleID
   rstRoySched!lorange = intLoRange
   rstRoySched!hirange = intHiRange
   rstRoySched!royalty = intRoyalty
   rstRoySched.UpdateBatch   rstRoySched.CloseEnd Sub
</pre>
<p class=label>
<b>VBScript 版本</b></p>
<p>
下面是使用 VBScript 编写、并用于 Active Server Page (ASP) 的相同范例。如需查看该完整功能范例,请使用与 IIS 一同安装并位于 C:\InetPub\ASPSamp\AdvWorks 的数据源 AdvWorks.mdb,来创建名为 AdvWorks 的系统“数据源名称”(DSN)。这是 Microsoft Access 数据库文件。请使用“查找”命令定位文件 Adovbs.inc,并将其放入计划使用的目录中。请将以下代码剪切并粘贴到“记事本”或其他文本编辑器中,另存为“Delete.asp”。这样,便可在任何客户端浏览器中查看结果。</p>
<p>
如要执行该范例,请先使用 <b>AddNew</b> 范例添加一些记录,然后可将其删除。并在任一客户端浏览器中查看结果。</p>
<pre>&lt;!-- #Include file="ADOVBS.INC" --&gt;
&lt;% Language = VBScript %&gt;&lt;HTML&gt;&lt;HEAD&gt;&lt;TITLE&gt;ADO Delete Method&lt;/TITLE&gt;
&lt;/HEAD&gt;&lt;BODY&gt; 
&lt;FONT FACE="MS SANS SERIF" SIZE=2&gt;
&lt;Center&gt;&lt;H3&gt;ADO Delete Method&lt;/H3&gt;&lt;!--- 用于创建记录集的 ADO Connection 对象 --&gt;
&lt;% 
' 创建并打开 Connection 对象。
Set OBJdbConnection = Server.CreateObject("ADODB.Connection") 
OBJdbConnection.Open "AdvWorks" 
' 创建并打开 Recordset 对象。
Set RsCustomerList = Server.CreateObject("ADODB.Recordset")
RsCustomerList.ActiveConnection = OBJdbConnection
RsCustomerList.CursorType = adOpenKeyset
RsCustomerList.LockType = adLockOptimistic
RsCustomerList.Source = "Customers"
RsCustomerList.Open
%&gt;
&lt;!-- 移动到指定记录并将其删除 --&gt;
&lt;% If Not IsEmpty(Request.Form("WhichRecord")) Then
   ' 获取值以便从 Form Post 方法移动
   Moves = Request.Form("WhichRecord")   RsCustomerList.Move CInt(Moves)
   If Not RsCustomerList.EOF or RsCustomerList.BOF Then
      RsCustomerList.Delete 1
      RsCustomerList.MoveFirst
      
   Else
      Response.Write "Not a Valid Record Number"
      RsCustomerList.MoveFirst
   End If
End If%&gt;
&lt;!-- Customer 表的 BEGIN 列标头行 --&gt;&lt;TABLE COLSPAN=8 CELLPADDING=5 BORDER=0&gt;&lt;TR&gt;
&lt;TD ALIGN=CENTER BGCOLOR="#008080"&gt;
&lt;FONT STYLE="ARIAL NARROW" COLOR="#ffffff" SIZE=1&gt;Company Name&lt;/FONT&gt;
&lt;/TD&gt;
&lt;TD ALIGN=CENTER BGCOLOR="#008080"&gt;
&lt;FONT STYLE="ARIAL NARROW" COLOR="#ffffff" SIZE=1&gt;Contact Name&lt;/FONT&gt;
&lt;/TD&gt;
&lt;TD ALIGN=CENTER WIDTH=150 BGCOLOR="#008080"&gt;
&lt;FONT STYLE="ARIAL NARROW" COLOR="#ffffff" SIZE=1&gt;Phone Number&lt;/FONT&gt;
&lt;/TD&gt;
&lt;TD ALIGN=CENTER BGCOLOR="#008080"&gt;
&lt;FONT STYLE="ARIAL NARROW" COLOR="#ffffff" SIZE=1&gt;City&lt;/FONT&gt;
&lt;/TD&gt;
&lt;TD ALIGN=CENTER BGCOLOR="#008080"&gt;
&lt;FONT STYLE="ARIAL NARROW" COLOR="#ffffff" SIZE=1&gt;State/Province&lt;/FONT&gt;
&lt;/TD&gt;&lt;/TR&gt;&lt;!-- 显示在记录集中 Customer Table Loop 的 ADO 数据,
每循环一次向 HTML 表添加一行 --&gt;
&lt;% Do While Not RsCustomerList.EOF %&gt;
  &lt;TR&gt;&lt;TD BGCOLOR="f7efde" ALIGN=CENTER&gt; 
  &lt;FONT STYLE="ARIAL NARROW" SIZE=1&gt; 
  &lt;%= RSCustomerList("CompanyName")%&gt; 
  &lt;/FONT&gt;&lt;/TD&gt;
  &lt;TD BGCOLOR="f7efde" ALIGN=CENTER&gt;
  &lt;FONT STYLE="ARIAL NARROW" SIZE=1&gt; 
  &lt;%= RScustomerList("ContactLastName") &amp; ", " %&gt; 
  &lt;%= RScustomerList("ContactFirstName") %&gt; 
  &lt;/FONT&gt;&lt;/TD&gt;
  &lt;TD BGCOLOR="f7efde" ALIGN=CENTER&gt;
  &lt;FONT STYLE="ARIAL NARROW" SIZE=1&gt;
  &lt;%= RScustomerList("PhoneNumber")%&gt; 
 &lt;/FONT&gt;&lt;/TD&gt;
  &lt;TD BGCOLOR="f7efde" ALIGN=CENTER&gt;
  &lt;FONT STYLE="ARIAL NARROW" SIZE=1&gt; 
  &lt;%= RScustomerList("City")%&gt; 
  &lt;/FONT&gt;&lt;/TD&gt;
  &lt;TD BGCOLOR="f7efde" ALIGN=CENTER&gt;
  &lt;FONT STYLE="ARIAL NARROW" SIZE=1&gt; 
  &lt;%= RScustomerList("StateOrProvince")%&gt; 
  &lt;/FONT&gt;&lt;/TD&gt;
  &lt;/TR&gt;
&lt;!-Next Row = Record Loop 并添加至 html 表 --&gt;
&lt;% 
RScustomerList.MoveNext 
Loop 
%&gt;
&lt;/Table&gt;&lt;/Center&gt;&lt;/FONT&gt;
&lt;!-- 对命名的记录执行客户端 Input Data Validation&nbsp; Move 并将其删除 --&gt;&lt;Center&gt;
&lt;H4&gt;Clicking Button Will Remove Designated Record&lt;/H4&gt;
&lt;H5&gt;There are &lt;%=RsCustomerList.RecordCount - 1%&gt; Records in this Set&lt;/H5&gt;
&lt;Form Method = Post Action = "Delete.asp" Name = Form&gt;
&lt;Input Type = Text Name = "WhichRecord" Size = 3&gt;&lt;/Form&gt;
&lt;Input Type = Button Name = cmdDelete Value = "Delete Record"&gt;&lt;/Center&gt;&lt;/BODY&gt;&lt;Script Language = "VBScript"&gt;Sub cmdDelete_OnClick
If IsNumeric(Document.Form.WhichRecord.Value) Then
   Document.Form.WhichRecord.Value = CInt(Document.Form.WhichRecord.Value)
Dim Response
   Response = MsgBox("Are You Sure About Deleting This Record?", vbYesNo,&nbsp; "ADO-ASP Example")   If Response = vbYes Then
      
   Document.Form.Submit
   
   End If
Else
   MsgBox "You Must Enter a Valid Record Number",,"ADO-ASP Example"
End If
End Sub
&lt;/Script&gt;
&lt;/HTML&gt;
</pre>
<center> <A HREF="http://www.51windows.Net">www.51windows.Net</A></center>
<SCRIPT LANGUAGE="JavaScript" src="/log/sitelog2.asp"></SCRIPT>
<script src="script.js"></script></BODY>
</HTML>

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -