Compartilhar via


Coleção Recordsets (DAO)

Aplica-se ao: Access 2013, Office 2013

Uma coleção Recordsets contém todos os objetos Recordset abertos em um objeto Connection ou Database.

Comentários

Ao usar objetos DAO, você manipula dados praticamente usando objetos Recordset.

Um novo objeto Recordset é automaticamente adicionado à coleção Recordsets quando você abre o objeto e é automaticamente removido quando você o fecha. Recordset

Você pode criar quantas variáveis de objeto Recordset forem necessárias. Diferentes objetos Recordset podem acessar as mesmas tabelas, consultas e campos sem entrar em conflito.

Para consultar um objeto Recordset em uma coleção de acordo com seu número ordinal ou sua configuração de propriedade Name, use qualquer um dos formulários de sintaxe a seguir:

  • Recordsets(0)

  • Recordsets(“nome”)

  • Conjuntos de registros! [nome]

Observação

[!OBSERVAçãO] Você pode abrir um objeto Recordset na mesma fonte de dados ou banco de dados mais de uma vez, criando nomes duplicados na coleção Recordsets. Você deve atribuir objetos Recordsets para variáveis de objetos e referenciá-los por nome de variável.

Exemplo

This example demonstrates Recordset objects and the Recordsets collection by opening four different types of Recordsets, enumerating the Recordsets collection of the current Database, and enumerating the Properties collection of each Recordset.

    Sub RecordsetX() 
     
     Dim dbsNorthwind As Database 
     Dim rstTable As Recordset 
     Dim rstDynaset As Recordset 
     Dim rstSnapshot As Recordset 
     Dim rstForwardOnly As Recordset 
     Dim rstLoop As Recordset 
     Dim prpLoop As Property 
     
     Set dbsNorthwind = OpenDatabase("Northwind.mdb") 
     
     With dbsNorthwind 
     
     ' Open one of each type of Recordset object. 
     Set rstTable = .OpenRecordset("Categories", _ 
     dbOpenTable) 
     Set rstDynaset = .OpenRecordset("Employees", _ 
     dbOpenDynaset) 
     Set rstSnapshot = .OpenRecordset("Shippers", _ 
     dbOpenSnapshot) 
     Set rstForwardOnly = .OpenRecordset _ 
     ("Employees", dbOpenForwardOnly) 
     
     Debug.Print "Recordsets in Recordsets " & _ 
     "collection of dbsNorthwind" 
     
     ' Enumerate Recordsets collection. 
     For Each rstLoop In .Recordsets 
     
     With rstLoop 
     Debug.Print " " & .Name 
     
     ' Enumerate Properties collection of each 
     ' Recordset object. Trap for any 
     ' properties whose values are invalid in 
     ' this context. 
     For Each prpLoop In .Properties 
     On Error Resume Next 
     If prpLoop <> "" Then Debug.Print _ 
     " " & prpLoop.Name & _ 
     " = " & prpLoop 
     On Error GoTo 0 
     Next prpLoop 
     
     End With 
     
     Next rstLoop 
     
     rstTable.Close 
     rstDynaset.Close 
     rstSnapshot.Close 
     rstForwardOnly.Close 
     
     .Close 
     End With 
     
    End Sub