Objeto de conjunto de registros ADO
Exemplos
Este exemplo demonstra como usar o método GetRows.
Objeto de conjunto de registros
O objeto ADO Recordset é usado para armazenar um conjunto de registros de uma tabela de banco de dados. Um objeto Recordset consiste em registros e colunas (campos).
No ADO, esse objeto é o mais importante e o mais usado para manipular dados de um banco de dados.
ProgID
set objRecordset=Server.CreateObject("ADODB.recordset")
Quando você abre um Recordset pela primeira vez, o ponteiro do registro atual aponta para o primeiro registro e as propriedades BOF e EOF são False. Se não houver registros, as propriedades BOF e EOF serão True.
Os objetos Recordset podem dar suporte a dois tipos de atualização:
- Atualização imediata - todas as alterações são gravadas imediatamente no banco de dados assim que você chama o método Update.
- Atualização em lote - o provedor armazenará várias alterações em cache e as enviará ao banco de dados com o método UpdateBatch.
No ADO existem 4 tipos diferentes de cursor definidos:
- Cursor dinâmico - permite que você veja adições, alterações e exclusões feitas por outros usuários.
- Cursor de conjunto de chaves - Como um cursor dinâmico, exceto que você não pode ver adições de outros usuários e impede o acesso a registros que outros usuários excluíram. As alterações de dados feitas por outros usuários ainda estarão visíveis.
- Cursor estático - Fornece uma cópia estática de um conjunto de registros para você usar para localizar dados ou gerar relatórios. Adições, alterações ou exclusões feitas por outros usuários não serão visíveis. Este é o único tipo de cursor permitido quando você abre um objeto Recordset do lado do cliente.
- Cursor somente para frente - permite rolar apenas para frente no conjunto de registros. Adições, alterações ou exclusões feitas por outros usuários não serão visíveis.
O tipo de cursor pode ser definido pela propriedade CursorType ou pelo parâmetro CursorType no método Open.
Observação: nem todos os provedores oferecem suporte a todos os métodos ou propriedades do objeto Recordset.
Propriedades
Property | Description |
---|---|
AbsolutePage | Sets or returns a value that specifies the page number in the Recordset object |
AbsolutePosition | Sets or returns a value that specifies the ordinal position of the current record in the Recordset object |
ActiveCommand | Returns the Command object associated with the Recordset |
ActiveConnection | Sets or returns a definition for a connection if the connection is closed, or the current Connection object if the connection is open |
BOF | Returns true if the current record position is before the first record, otherwise false |
Bookmark | Sets or returns a bookmark. The bookmark saves the position of the current record |
CacheSize | Sets or returns the number of records that can be cached |
CursorLocation | Sets or returns the location of the cursor service |
CursorType | Sets or returns the cursor type of a Recordset object |
DataMember | Sets or returns the name of the data member that will be retrieved from the object referenced by the DataSource property |
DataSource | Specifies an object containing data to be represented as a Recordset object |
EditMode | Returns the editing status of the current record |
EOF | Returns true if the current record position is after the last record, otherwise false |
Filter | Sets or returns a filter for the data in a Recordset object |
Index | Sets or returns the name of the current index for a Recordset object |
LockType | Sets or returns a value that specifies the type of locking when editing a record in a Recordset |
MarshalOptions | Sets or returns a value that specifies which records are to be returned to the server |
MaxRecords | Sets or returns the maximum number of records to return to a Recordset object from a query |
PageCount | Returns the number of pages with data in a Recordset object |
PageSize | Sets or returns the maximum number of records allowed on a single page of a Recordset object |
RecordCount | Returns the number of records in a Recordset object |
Sort | Sets or returns the field names in the Recordset to sort on |
Source | Sets a string value or a Command object reference, or returns a String value that indicates the data source of the Recordset object |
State | Returns a value that describes if the Recordset object is open, closed, connecting, executing or retrieving data |
Status | Returns the status of the current record with regard to batch updates or other bulk operations |
StayInSync | Sets or returns whether the reference to the child records will change when the parent record position changes |
Métodos
Method | Description |
---|---|
AddNew | Creates a new record |
Cancel | Cancels an execution |
CancelBatch | Cancels a batch update |
CancelUpdate | Cancels changes made to a record of a Recordset object |
Clone | Creates a duplicate of an existing Recordset |
Close | Closes a Recordset |
CompareBookmarks | Compares two bookmarks |
Delete | Deletes a record or a group of records |
Find | Searches for a record in a Recordset that satisfies a specified criteria |
GetRows | Copies multiple records from a Recordset object into a two-dimensional array |
GetString | Returns a Recordset as a string |
Move | Moves the record pointer in a Recordset object |
MoveFirst | Moves the record pointer to the first record |
MoveLast | Moves the record pointer to the last record |
MoveNext | Moves the record pointer to the next record |
MovePrevious | Moves the record pointer to the previous record |
NextRecordset | Clears the current Recordset object and returns the next Recordset object by looping through a series of commands |
Open | Opens a database element that gives you access to records in a table, the results of a query, or to a saved Recordset |
Requery | Updates the data in a Recordset by re-executing the query that made the original Recordset |
Resync | Refreshes the data in the current Recordset from the original database |
Save | Saves a Recordset object to a file or a Stream object |
Seek | Searches the index of a Recordset to find a record that matches the specified values |
Supports | Returns a boolean value that defines whether or not a Recordset object supports a specific type of functionality |
Update | Saves all changes made to a single record in a Recordset object |
UpdateBatch | Saves all changes in a Recordset to the database. Used when working in batch update mode |
Eventos
Observação: você não pode manipular eventos usando VBScript ou JScript (somente as linguagens Visual Basic, Visual C++ e Visual J++ podem manipular eventos).
Event | Description |
---|---|
EndOfRecordset | Triggered when you try to move to a record after the last record |
FetchComplete | Triggered after all records in an asynchronous operation have been fetched |
FetchProgress | Triggered periodically in an asynchronous operation, to state how many more records that have been fetched |
FieldChangeComplete | Triggered after the value of a Field object change |
MoveComplete | Triggered after the current position in the Recordset has changed |
RecordChangeComplete | Triggered after a record has changed |
RecordsetChangeComplete | Triggered after the Recordset has changed |
WillChangeField | Triggered before the value of a Field object change |
WillChangeRecord | Triggered before a record change |
WillChangeRecordset | Triggered before a Recordset change |
WillMove | Triggered before the current position in the Recordset changes |
Coleções
Collection | Description |
---|---|
Fields | Indicates the number of Field objects in the Recordset object |
Properties | Contains all the Property objects in the Recordset object |
Propriedades da coleção Fields
Property | Description |
---|---|
Count | Returns the number of items in the fields collection. Starts at zero.
Example: countfields=rs.Fields.Count |
Item(named_item/number) | Returns a specified item in the fields collection.
Example: itemfields=rs.Fields.Item(1) |
Propriedades da coleção de propriedades
Property | Description |
---|---|
Count | Returns the number of items in the properties collection. Starts at zero.
Example: countprop=rs.Properties.Count |
Item(named_item/number) | Returns a specified item in the properties collection.
Example: itemprop = rs.Properties.Item(1) |