Oggetto Recordset ADO
- Pagina precedente Record ADO
- Pagina successiva Stream ADO
Esempio
- GetRows
- Questo esempio dimostra come utilizzare il metodo GetRows.
Oggetto Recordset
L'oggetto Recordset di ADO viene utilizzato per contenere un insieme di record provenienti da una tabella del database. Un oggetto Recordset è composto da record e colonne (campi).
In ADO, questo oggetto è l'importante e più utilizzato per le operazioni sui dati del database.
ProgID
set objRecordset=Server.CreateObject("ADODB.recordset")
Quando si apre per la prima volta un Recordset, il puntatore del record corrente si posiziona sul primo record, contemporaneamente le proprietà BOF e EOF sono False. Se non ci sono record, le proprietà BOF e EOF sono True.
L'oggetto Recordset è in grado di supportare due tipi di aggiornamento:
- Aggiornamento immediato - Una volta chiamato il metodo Update, tutte le modifiche vengono scritte immediatamente nel database.
- Aggiornamento in batch - Il provider cache più modifiche, quindi trasmette queste modifiche al database utilizzando il metodo UpdateBatch.
In ADO, sono definiti 4 tipi diversi di cursori (puntatori):
- Cursor dinamico - Permette di visualizzare le aggiunte, le modifiche e le cancellazioni fatte dagli altri utenti
- Cursor di set di chiave - Simile al cursor dinamico, la differenza è che non è possibile visualizzare le aggiunte fatte da altri utenti e impedisce l'accesso ai record eliminati dagli altri utenti. Le modifiche ai dati fatte dagli altri utenti sono comunque visibili.
- Cursore statico - Fornisce una copia statica del set di record, utilizzabile per cercare dati o generare report. Inoltre, le aggiunte, le modifiche e le cancellazioni fatte dagli altri utenti saranno invisibili. Quando si apre un oggetto Recordset client, questo è l'unico tipo di cursore permesso.
- Cursore in avanti statico - Fornisce una copia statica del set di record, utilizzabile per cercare dati o generare report. Inoltre, le aggiunte, le modifiche e le cancellazioni fatte dagli altri utenti saranno invisibili. Quando si apre un oggetto Recordset client, questo è l'unico tipo di cursore permesso.
Il tipo di cursore può essere impostato tramite l'attributo CursorType o il parametro CursorType nel metodo Open.
Nota:Non tutti i provider supportano tutti i metodi e attributi dell'oggetto Recordset.
Proprietà
Proprietà | Descrizione |
---|---|
AbsolutePage | Impostare o restituire un valore che specifica la pagina del record nell'oggetto Recordset. |
AbsolutePosition | Impostare o restituire un valore che specifica la posizione sequenziale del record corrente nell'oggetto Recordset. |
ActiveCommand | Restituire l'oggetto Command associato all'oggetto Recordset. |
ActiveConnection | Se la connessione è chiusa, impostare o restituire la definizione della connessione; se la connessione è aperta, impostare o restituire l'oggetto Connection corrente. |
BOF | Restituire true se la posizione del record corrente è prima del primo record, altrimenti restituire false. |
Bookmark | Impostare o restituire un segnalibro. Questo segnalibro salva la posizione del record corrente. |
CacheSize | Impostare o restituire il numero di record che possono essere memorizzati nella cache. |
CursorLocation | Impostare o restituire la posizione del servizio del cursore. |
CursorType | Impostare o restituire il tipo di cursore di un oggetto Recordset. |
DataMember | Impostare o restituire il nome del membro di dati da recuperare dall'oggetto specificato dall'attributo DataSource. |
DataSource | Specificare un oggetto che contiene i dati che devono essere rappresentati come oggetto Recordset. |
EditMode | Restituire lo stato di editing del record corrente. |
EOF | Restituire true se la posizione del record corrente è dopo l'ultimo record, altrimenti restituire false. |
Filter | Restituire un filtro per i dati dell'oggetto Recordset. |
Index | Impostare o restituire il nome dell'indice corrente dell'oggetto Recordset. |
LockType | Impostare o restituire un valore che specifica il tipo di bloccaggio che può essere utilizzato quando si modifica un record nel Recordset. |
MarshalOptions | Impostare o restituire un valore, questo valore specifica quali record vengono restituiti al server. |
MaxRecords | Imposta o restituisce il numero massimo di record che possono essere restituiti da un Recordset derivato da una query. |
PageCount | Restituisce il numero di pagine di dati in un oggetto Recordset. |
PageSize | Imposta o restituisce il numero massimo di record permessi su una singola pagina dell'oggetto Recordset. |
RecordCount | Restituisce il numero di record in un oggetto Recordset. |
Sort | Imposta o restituisce un nome di campo o più nomi di campo utilizzati come base per l'ordinamento del Recordset. |
Source | Imposta un valore di stringa, un riferimento all'oggetto Command o restituisce un valore di stringa che indica il sorgente dei dati dell'oggetto Recordset. |
State | Restituisce un valore che descrive se l'oggetto Recordset è aperto, chiuso, in connessione, in esecuzione o in fase di recupero dei dati. |
Status | Restituisce lo stato corrente del record riguardo a un batch update o ad altre operazioni su larga scala. |
StayInSync | Imposta o restituisce se l'indicatore del record dei figli cambia quando la posizione del record del genitore cambia. |
Metodo
Metodo | Descrizione |
---|---|
AddNew | Crea un nuovo record. |
Cancel | Annulla un'esecuzione. |
CancelBatch | Annulla una batch update. |
CancelUpdate | Annulla le modifiche apportate a un record dell'oggetto Recordset. |
Clone | Crea una copia di un Recordset esistente. |
Close | Chiudi un Recordset. |
CompareBookmarks | Confronta due bookmarc. |
Delete | Elimina un record o un gruppo di record. |
Find | Cerca un record in un Recordset che soddisfi una condizione specifica. |
GetRows | Copia più record da un oggetto Recordset in un array bidimensionale. |
GetString | Restituisce il Recordset come stringa. |
Move | Sposta il puntatore del record nell'oggetto Recordset. |
MoveFirst | Sposta il puntatore del record alla prima riga. |
MoveLast | Sposta il puntatore del record all'ultima riga. |
MoveNext | Sposta il puntatore del record alla riga successiva. |
MovePrevious | Sposta il puntatore del record alla riga precedente. |
NextRecordset | Cancella l'oggetto Recordset corrente eseguendo una serie di comandi e torna al Recordset successivo. |
Open | Apri un elemento di database, che può fornire l'accesso ai record delle tabelle, ai risultati delle query o ai Recordset salvati. |
Requery | Aggiorna i dati dell'oggetto Recordset eseguendo di nuovo la query su cui si basa l'oggetto. |
Resync | Aggiorna i dati correnti del Recordset con un aggiornamento dal database originale. |
Save | Salva l'oggetto Recordset in un file o in un oggetto Stream. |
Seek | Cerca l'indice dell'oggetto Recordset per localizzare rapidamente una riga che corrisponde al valore specificato e renderla la riga corrente. |
Supports | Restituisce un valore booleano che definisce se l'oggetto Recordset supporta un tipo specifico di funzionalità. |
Update | Salva tutte le modifiche apportate a un singolo record di un oggetto Recordset. |
UpdateBatch | Salva tutte le modifiche apportate a un Recordset in un database. Utilizzare in modalità aggiornamento batch. |
Evento
Nota: Non è possibile gestire gli eventi utilizzando VBScript o JScript (solo i linguaggi Visual Basic, Visual C++ e Visual J++ possono gestire gli eventi).
Evento | Descrizione |
---|---|
EndOfRecordset | Viene attivato quando si tenta di muoversi oltre la fine del Recordset. |
FetchComplete | Viene attivato quando tutti i record dell'operazione asincrona sono stati letti. |
FetchProgress | Viene attivato regolarmente durante l'operazione asincrona, per riportare il numero di record letti. |
FieldChangeComplete | Viene attivato dopo aver modificato il valore di un oggetto Field. |
MoveComplete | Viene attivato dopo aver modificato la posizione corrente nel Recordset. |
RecordChangeComplete | Viene attivato dopo aver modificato una riga. |
RecordsetChangeComplete | Viene attivato dopo aver modificato il Recordset. |
WillChangeField | Viene attivato prima di modificare il valore di un oggetto Field. |
WillChangeRecord | Viene attivato prima di modificare una riga. |
WillChangeRecordset | Viene attivato prima di modificare il Recordset. |
WillMove | Viene attivato prima del cambio di posizione corrente nel Recordset. |
Collezione
Collezione | Descrizione |
---|---|
Fields | Indica il numero di oggetti Field presenti in questo oggetto Recordset. |
Properties | Contiene tutti gli oggetti Property degli oggetti Recordset. |
Proprietà della raccolta Fields
Proprietà | Descrizione |
---|---|
Count |
Restituisce il numero di elementi nella raccolta fields. Partito da 0. Esempio: countfields = rs.Fields.Count |
Item(named_item/number) |
Restituisce un elemento specifico della raccolta fields. Esempio: itemfields = rs.Fields.Item(1) oppure itemfields = rs.Fields.Item("Name") |
Proprietà della raccolta Properties
Proprietà | Descrizione |
---|---|
Count |
Restituisce il numero di elementi nella raccolta properties. Partito da 0. Esempio: countprop = rs.Properties.Count |
Item(named_item/number) |
Restituisce un elemento specifico della raccolta properties. Esempio: itemprop = rs.Properties.Item(1) oppure itemprop = rs.Properties.Item("Name") |
- Pagina precedente Record ADO
- Pagina successiva Stream ADO