ADO: Метод Update и UpdateBatch - VB

Узнай цену своей работы

Формулировка задачи:

Скажите пожалуйста различия работы двух методов компонента: Update, UpdateBatch

Решение задачи: «ADO: Метод Update и UpdateBatch»

textual
Листинг программы
  1. Public Sub UpdateBatchX()
  2.  
  3.    Dim rstTitles As ADODB.Recordset
  4.    Dim strCnn As String
  5.    Dim strTitle As String
  6.    Dim strMessage As String
  7.  
  8.    ' Assign connection string to variable.
  9.      strCnn = 'Provider=sqloledb;' & _
  10.       'Data Source=srv;Initial Catalog=pubs;User Id=sa;Password=; '
  11.  
  12.    Set rstTitles = New ADODB.Recordset
  13.    rstTitles.CursorType = adOpenKeyset
  14.    rstTitles.LockType = adLockBatchOptimistic
  15.    rstTitles.Open 'titles', strCnn, , , adCmdTable
  16.  
  17.    rstTitles.MoveFirst
  18.  
  19.    ' Loop through recordset and ask user if she wants
  20.   ' to change the type for a specified title.
  21.   Do Until rstTitles.EOF
  22.       If Trim(rstTitles!Type) = 'psychology' Then
  23.         strTitle = rstTitles!Title
  24.          strMessage = 'Title: ' & strTitle & vbCr & _
  25.             'Change type to self help?'
  26.  
  27.          If MsgBox(strMessage, vbYesNo) = vbYes Then
  28.             rstTitles!Type = 'self_help'
  29.         End If
  30.       End If
  31.  
  32.       rstTitles.MoveNext
  33.    Loop
  34.  
  35.    ' Ask the user if she wants to commit to all the
  36.   ' changes made above.
  37.   If MsgBox('Save all changes?', vbYesNo) = vbYes Then
  38.      rstTitles.UpdateBatch
  39.    Else
  40.       rstTitles.CancelBatch
  41.    End If
  42.  
  43.    ' Print current data in recordset.
  44.   rstTitles.Requery
  45.    rstTitles.MoveFirst
  46.    Do While Not rstTitles.EOF
  47.       Debug.Print rstTitles!Title & ' - ' & rstTitles!Type
  48.      rstTitles.MoveNext
  49.    Loop
  50.  
  51.    ' Restore original values because this is a demonstration.
  52.   rstTitles.MoveFirst
  53.    Do Until rstTitles.EOF
  54.       If Trim(rstTitles!Type) = 'self_help' Then
  55.         rstTitles!Type = 'psychology'
  56.      End If
  57.       rstTitles.MoveNext
  58.    Loop
  59.    rstTitles.UpdateBatch
  60.  
  61.    rstTitles.Close
  62.  
  63. End Sub

ИИ поможет Вам:


  • решить любую задачу по программированию
  • объяснить код
  • расставить комментарии в коде
  • и т.д
Попробуйте бесплатно

Оцени полезность:

6   голосов , оценка 3.5 из 5

Нужна аналогичная работа?

Оформи быстрый заказ и узнай стоимость

Бесплатно
Оформите заказ и авторы начнут откликаться уже через 10 минут
Похожие ответы