编程论坛
400万+工程师在用
华为|鸿蒙开发者日
直播报名
400万+工程师在用
华为|鸿蒙开发者日
直播报名

电子发烧友网工程师

17年用户 16436经验值
擅长:可编程逻辑 MEMS/传感技术 测量仪表 模拟技术 控制/MCU RF/无线
私信 关注

UpdateBatch 和 CancelBatch 方法范例 (VB)

2009-1-8 10:30

<p><font face="Verdana">UpdateBatch 和 CancelBatch 方法范例 (VB)</font></p><font face="Verdana">
<p><br/>本范例演示 UpdateBatch 和 CancelBatch 方法。</p>
<p>Public Sub UpdateBatchX()</p>
<p>&nbsp;&nbsp;&nbsp; Dim rsttitles As ADODB.Recordset<br/>&nbsp;&nbsp;&nbsp; Dim strCnn As String<br/>&nbsp;&nbsp;&nbsp; Dim strTitle As String<br/>&nbsp;&nbsp;&nbsp; Dim strMessage As String</p>
<p>&nbsp;&nbsp;&nbsp; ' Assign connection string to variable.<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; strCnn = "Provider=sqloLEDb;" &amp; _<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "Data Source=srv;Initial Catalog=Pubs;User Id=sa;Password=; "</p>
<p>&nbsp;&nbsp;&nbsp; Set rstTitles = New ADODB.Recordset<br/>&nbsp;&nbsp;&nbsp; rstTitles.CursorType = adOpenKeyset<br/>&nbsp;&nbsp;&nbsp; rstTitles.LockType = adLockBatchOptimistic<br/>&nbsp;&nbsp;&nbsp; rstTitles.Open "Titles", strCnn, , , adCmdTable<br/>&nbsp;&nbsp;&nbsp; <br/>&nbsp;&nbsp;&nbsp; rstTitles.MoveFirst</p>
<p>&nbsp;&nbsp;&nbsp; ' Loop through recordset and ask user IF she wants <br/>&nbsp;&nbsp;&nbsp; ' to change the type for a specified title.<br/>&nbsp;&nbsp;&nbsp; Do Until rstTitles.EOF<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; If Trim(rstTitles!Type) = "psychology" Then<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; strTitle = rstTitles!Title<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; strMessage = "Title: " &amp; strTitle &amp; vbCr &amp; _<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; "Change type to self help?"</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; If MsgBox(strMessage, vbYesNo) = vbYes Then<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; rstTitles!Type = "self_help"<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; End If<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; End If</p>
<p>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; rstTitles.MoveNext<br/>&nbsp;&nbsp;&nbsp; Loop</p>
<p>&nbsp;&nbsp;&nbsp; ' Ask the user if she wants to commit to all the <br/>&nbsp;&nbsp;&nbsp; ' changes made above.<br/>&nbsp;&nbsp;&nbsp; If MsgBox("Save all changes?", vbYesNo) = vbYes Then<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; rstTitles.UpdateBatch<br/>&nbsp;&nbsp;&nbsp; Else<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; rstTitles.CancelBatch<br/>&nbsp;&nbsp;&nbsp; End If</p>
<p>&nbsp;&nbsp;&nbsp; ' Print current data in recordset.<br/>&nbsp;&nbsp;&nbsp; rstTitles.Requery<br/>&nbsp;&nbsp;&nbsp; rstTitles.MoveFirst<br/>&nbsp;&nbsp;&nbsp; Do While Not rstTitles.EOF<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; debug.Print rstTitles!Title &amp; " - " &amp; rstTitles!Type<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; rstTitles.MoveNext<br/>&nbsp;&nbsp;&nbsp; Loop</p>
<p>&nbsp;&nbsp;&nbsp; ' Restore original values because this is a demonstration.<br/>&nbsp;&nbsp;&nbsp; rstTitles.MoveFirst<br/>&nbsp;&nbsp;&nbsp; Do Until rstTitles.EOF<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; If Trim(rstTitles!Type) = "self_help" Then<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; rstTitles!Type = "psychology"<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; End If<br/>&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; rstTitles.MoveNext<br/>&nbsp;&nbsp;&nbsp; Loop<br/>&nbsp;&nbsp;&nbsp; rstTitles.UpdateBatch</p>
<p>&nbsp;&nbsp;&nbsp; rstTitles.Close</p>
<p>End Sub</p>
<p></font>&nbsp;</p>

更多回帖

打开APP