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

📄 mdmthupdatex.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>Update 和 CancelUpdate 方法范例</title>
<style>@import url(msdn_ie4.css);</style>
</HEAD>
<BODY>
<h3><a name="mdmthupdatex"></a>Update 和 CancelUpdate 方法范例</h3>
<p>
该范例连同 CancelUpdate 方法说明 Update 方法。</p>
<pre>Public Sub UpdateX()   Dim rstEmployees As ADODB.Recordset
   Dim strOldFirst As String
   Dim strOldLast As String
   Dim strMessage As String   ' 使用雇员表中的姓名打开记录集。
      strCnn = "Provider=sqloledb;" &amp; _
      "Data Source=srv;Initial Catalog=pubs;User Id=sa;Password=; "
   Set rstEmployees = New ADODB.Recordset
   rstEmployees.CursorType = adOpenKeyset
   rstEmployees.LockType = adLockOptimistic
   rstEmployees.Open "SELECT fname, lname " &amp; _
      "FROM Employee ORDER BY lname", strCnn, , , adCmdText   ' 储存原始数据。
   strOldFirst = rstEmployees!fname
   strOldLast = rstEmployees!lname
   ' 更改编辑缓冲区中的数据。
   rstEmployees!fname = "Linda"
   rstEmployees!lname = "Kobara"   ' 显示缓冲区的内容并获取用户输入。
   strMessage = "Edit in progress:" &amp; vbCr &amp; _
      "&nbsp; Original data = " &amp; strOldFirst &amp; " " &amp; _
      strOldLast &amp; vbCr &amp; "&nbsp; Data in buffer = " &amp; _
      rstEmployees!fname &amp; " " &amp; rstEmployees!lname &amp; vbCr &amp; vbCr &amp; _
      "Use Update to replace the original data with " &amp; _
      "the buffered data in the Recordset?"   If MsgBox(strMessage, vbYesNo) = vbYes Then
      rstEmployees.Update
   Else
      rstEmployees.CancelUpdate
   End If   ' 显示结果数据。
   MsgBox "Data in recordset = " &amp; rstEmployees!fname &amp; " " &amp; _
      rstEmployees!lname   ' 恢复原始数据,因为这只是演示。
   If Not (strOldFirst = rstEmployees!fname And _
         strOldLast = rstEmployees!lname) Then
      rstEmployees!fname = strOldFirst
      rstEmployees!lname = strOldLast
      rstEmployees.Update
   End If   rstEmployees.CloseEnd Sub
</pre>
<p>
该范例连同 <b>AddNew</b> 方法说明 <b>Update</b> 方法。</p>
<pre>Public Sub UpdateX2()   Dim cnn1 As ADODB.Connection
   Dim rstEmployees As ADODB.Recordset
   Dim strEmpID As String
   Dim strOldFirst As String
   Dim strOldLast As String
   Dim strMessage As String   ' 打开连接。
   Set cnn1 = New ADODB.Connection
      strCnn = "Provider=sqloledb;" &amp; _
      "Data Source=srv;Initial Catalog=pubs;User Id=sa;Password=; "
   cnn1.Open strCnn   ' 使用雇员表中的数据打开记录集。
   Set rstEmployees = New ADODB.Recordset
   rstEmployees.CursorType = adOpenKeyset
   rstEmployees.LockType = adLockOptimistic
   rstEmployees.Open "employee", cnn1, , , adCmdTable   rstEmployees.AddNew
   strEmpID = "B-S55555M"
   rstEmployees!emp_id = strEmpID
   rstEmployees!fname = "Bill"
   rstEmployees!lname = "Sornsin"   ' 显示缓冲区内容并获取用户输入。
   strMessage = "AddNew in progress:" &amp; vbCr &amp; _
      "Data in buffer = " &amp; rstEmployees!emp_id &amp; ", " &amp; _
      rstEmployees!fname &amp; " " &amp; rstEmployees!lname &amp; vbCr &amp; vbCr &amp; _
      "Use Update to save buffer to recordset?"   If MsgBox(strMessage, vbYesNoCancel) = vbYes Then
      rstEmployees.Update
      ' 转到新记录并显示结果数据。
      MsgBox "Data in recordset = " &amp; rstEmployees!emp_id &amp; ", " &amp; _
          rstEmployees!fname &amp; " " &amp; rstEmployees!lname
   Else
      rstEmployees.CancelUpdate
      MsgBox "No new record added."
   End If   ' 删除新数据,因为这只是演示。
   cnn1.Execute "DELETE FROM employee WHERE emp_id = '" &amp; strEmpID &amp; "'"
   
   rstEmployees.CloseEnd Sub
</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 + -