Save et Open, exemple de méthodes (VB)

Ces trois exemples montrent comment les méthodes Save et Open peuvent être utilisées ensemble.

Supposons que vous effectuez un voyage d’affaires et que vous souhaitez prendre une table à partir d’une base de données. Avant de partir, vous accédez aux données sous forme d’objet Recordset et les enregistrez sous une forme transportable. Lorsque vous arrivez à votre destination, vous accédez au Recordset en tant que Recordset local déconnecté. Vous apportez des modifications au Recordset, puis l’enregistrez à nouveau. Enfin, lorsque vous revenez à la maison, vous vous connectez à nouveau à la base de données et la mettez à jour avec les modifications que vous avez apportées en déplacement.

Tout d’abord, accédez à et enregistrez la table Authors.

'BeginSaveVB  
  
    'To integrate this code  
    'replace the data source and initial catalog values  
    'in the connection string  
  
Public Sub Main()  
    On Error GoTo ErrorHandler  
  
    'recordset and connection variables  
    Dim rstAuthors As ADODB.Recordset  
    Dim Cnxn As ADODB.Connection  
    Dim strCnxn As String  
    Dim strSQLAuthors As String  
  
    ' Open connection  
    Set Cnxn = New ADODB.Connection  
    strCnxn = "Provider='sqloledb';Data Source='MySqlServer';" & _  
        "Initial Catalog='Pubs';Integrated Security='SSPI';"  
    Cnxn.Open strCnxn  
  
    Set rstAuthors = New ADODB.Recordset  
    strSQLAuthors = "SELECT au_id, au_lname, au_fname, city, phone FROM Authors"  
    rstAuthors.Open strSQLAuthors, Cnxn, adOpenDynamic, adLockOptimistic, adCmdText  
  
    'For sake of illustration, save the Recordset to a diskette in XML format  
    rstAuthors.Save "c:\Pubs.xml", adPersistXML  
  
    ' clean up  
    rstAuthors.Close  
    Cnxn.Close  
    Set rstAuthors = Nothing  
    Set Cnxn = Nothing  
    Exit Sub  
  
ErrorHandler:  
    'clean up  
    If Not rstAuthors Is Nothing Then  
        If rstAuthors.State = adStateOpen Then rstAuthors.Close  
    End If  
    Set rstAuthors = Nothing  
  
    If Not Cnxn Is Nothing Then  
        If Cnxn.State = adStateOpen Then Cnxn.Close  
    End If  
    Set Cnxn = Nothing  
  
    If Err <> 0 Then  
        MsgBox Err.Source & "-->" & Err.Description, , "Error"  
    End If  
End Sub  
'EndSaveVB  

À ce stade, vous êtes arrivé à votre destination. Vous accédez à la table Authors en tant que Recordset local et déconnecté. Vous devez disposer du fournisseur MSPersist sur l’ordinateur que vous utilisez pour accéder au fichier enregistré, a:\Pubs.xml.

Attribute VB_Name = "Save"  

Enfin, vous rentrez chez vous. Maintenant, mettez à jour la base de données avec vos modifications.

Attribute VB_Name = "Save"  

Voir aussi

Open, méthode (objet Recordset ADO)
Recordset, objet (ADO)
En savoir plus sur la persistance des recordsets
Save, méthode