ADO Recordset objekt

Eksempel

GetRows
Dette eksempel viser, hvordan man bruger GetRows-metoden.

Recordset-objekter

ADO Recordset-objekter bruges til at indeholde en samling af poster fra en tabel i databasen. Et Recordset-objekt består af poster og kolonner (felter).

I ADO er dette objekt det vigtigste og mest almindeligt brugte til at udføre dataoperationer på databasen.

ProgID

Set objRecordset = Server.CreateObject("ADODB.recordset")

Når du åbner en Recordset første gang, peger den aktuelle recordpointer på den første record, og BOF og EOF egenskaberne er False. Hvis der ikke er nogen poster, er BOF og EOF egenskaberne True.

Recordset-objekter kan understøtte to opdateringstyper:

  • Umiddelbar opdatering - Når Update-metoden kaldes, skrives alle ændringer øjeblikkeligt til databasen.
  • Batch opdatering - provider cacher flere ændringer og sender dem derefter til databasen ved hjælp af UpdateBatch-metoden.

I ADO er der defineret 4 forskellige cursor (pilot) typer:

  • Dynamisk kursor - Tillader dig at se tilføjelser, ændringer og sletninger foretaget af andre brugere
  • Nøglekursor - Lignende dynamisk kursor, men du kan ikke se tilføjelser, der er foretaget af andre brugere, og det forhindrer dig i at få adgang til poster, der er slettet af andre brugere. Dataændringer foretaget af andre brugere er stadig synlige.
  • Statisk cursor - Leverer en statisk kopi af recordsets, der kan bruges til at finde data eller generere rapporter. Derudover vil tilføjelser, ændringer og sletninger foretaget af andre brugere være usynlige. Dette er den eneste tilladte cursor-type, når du åbner en klient Recordset-objekt.
  • Begrænset fremadskridende cursor - Tillader kun fremadskridende rulning i Recordset. Derudover vil tilføjelser, ændringer og sletninger foretaget af andre brugere være usynlige.

Cursortypen kan indstilles ved hjælp af CursorType-attributten eller CursorType-parametret i Open-metoden.

Bemærk:Ikke alle udbydere (providers) understøtter alle metoder og egenskaber for Recordset-objektet.

Egenskab

Egenskab Beskrivelse
AbsolutePage Indstil eller returner en værdi, der kan specificere side nummeret i Recordset-objektet.
AbsolutePosition Indstil eller returner en værdi, der kan specificere den absolutte position af den aktuelle post i Recordset-objektet (nummerposition).
ActiveCommand Returner kommandoobjektet, der er forbundet med Recordset-objektet.
ActiveConnection Indstil eller returner definitionen af forbindelsen, hvis forbindelsen er lukket, ellers indstil eller returner det aktuelle Connection-objekt, hvis forbindelsen er åben.
BOF Returner true, hvis den aktuelle postposition er før den første post, ellers returner false.
Bookmark Indstil eller returner en bookmark. Denne bookmark gemmer positionen af den aktuelle post.
CacheSize Indstil eller returner antallet af poster, der kan cachest.
CursorLocation Indstil eller returner placeringen af cursortjenesten.
CursorType Indstil eller returner cursortypen for et Recordset-objekt.
DataMember Indstil eller returner navnet på data成员, der skal hentes fra objektet, der refereres til af DataSource-attributten.
DataSource Specificer et objekt, der indeholder data, der skal repræsenteres som Recordset-objekt.
EditMode Returner redigeringsstatus for den aktuelle post.
EOF Returner true, hvis den aktuelle postposition er efter det sidste post, ellers returner false.
Filter Returner en filter for dataene i Recordset-objektet.
Index Indstil eller returner navnet på den aktuelle indeks i Recordset-objektet.
LockType Indstil eller returner en værdi, der kan specificere hvilken låsetype, der kan angives, når et enkelt recordset-post bliver redigeret.
MarshalOptions Indstil eller returner en værdi, der angiver hvilke poster, der returneres til serveren.
MaxRecords Indstil eller returner det maksimale antal indlæg, der kan returneres fra en forespørgsel til et Recordset-objekt.
PageCount Returner antallet af data sider i et Recordset-objekt.
PageSize Indstil eller returner det maksimale antal indlæg, der er tilladt på en enkelt side af Recordset-objektet.
RecordCount Returner antallet af indlæg i et Recordset-objekt.
Sort Indstil eller returner et eller flere felter, der bruges som sorteringsgrunde for Recordset.
Source Indstil en strengværdi, en Command-objekt henvisning eller returner en strengværdi, der indikerer datakilden til Recordset-objektet.
State Returner en værdi, der beskriver om Recordset-objektet er åbent, lukket, forbinder, udfører eller henter data.
Status Returner status for det aktuelle indlæg for en batchopdatering eller andre omfattende operationer.
StayInSync Indstil eller returner om referencen til underindlæg ændres, når placeringen af det overordnede indlæg ændres.

Metode

Metode Beskrivelse
AddNew Opret et nyt indlæg.
Cancel Annuller en udførelse.
CancelBatch Annuller en batchopdatering.
CancelUpdate Annuller ændringer, der er foretaget på et enkelt indlæg i Recordset-objektet.
Clone Opret en kopi af en eksisterende Recordset.
Close Luk en Recordset.
CompareBookmarks Komparer to bookmærker.
Delete Slet et indlæg eller en gruppe af indlæg.
Find Søg efter et indlæg i en Recordset, der opfylder en bestemt betingelse.
GetRows Kopier flere rækker fra et Recordset-objekt til en to维数组.
GetString Returner Recordset som en streng.
Move Flyt recordpinden i Recordset-objektet.
MoveFirst Flyt recordpinden til det første indlæg.
MoveLast Flyt recordpinden til det sidste indlæg.
MoveNext Flyt recordpinden til det næste indlæg.
MovePrevious Flyt recordpinden til det foregående indlæg.
NextRecordset Fjern den aktuelle Recordset-objekt ved at udføre en række kommandoer og returner næste Recordset.
Open Åbne en databaseelement, som kan tilbyde adgang til tabeller, resultater af forespørgsler eller gemte Recordset.
Requery Opdater data i Recordset-objektet ved at genkøre den spørgsmål, objektet er baseret på.
Resync Genopfrisk data i det aktuelle Recordset fra den oprindelige database.
Save Gem Recordset-objektet til en fil eller Stream-objekt.
Seek Søg i Recordsets indeks for at hurtigt finde rækker, der matcher den specificerede værdi, og gør den til den aktuelle række.
Supports Returnerer et boolesk værdi, der definerer om Recordset-objektet understøtter en bestemt funktionstype.
Update Gem alle ændringer, der er foretaget på et enkelt record i Recordset-objektet.
UpdateBatch Gem alle ændringer i Recordset til databasen. Brug venligst batchopdateringsmode.

Begivenhed

Bemærk: Du kan ikke håndtere begivenheder ved hjælp af VBScript eller JScript (kun Visual Basic, Visual C++ og Visual J++ sprog kan håndtere begivenheder).

Begivenhed Beskrivelse
EndOfRecordset Udløses, når forsøget på at flytte til en række efter Recordset's slutning.
FetchComplete Udløses, når alle record i asynkrone operationer er blevet læst.
FetchProgress Udløses regelmæssigt under asynkrone operationer, og rapporterer hvor mange record, der er blevet læst.
FieldChangeComplete Udløses efter ændring af værdien af Field-objektet.
MoveComplete Udløses efter ændring af当前位置 i Recordset.
RecordChangeComplete Udløses efter ændring af et record.
RecordsetChangeComplete Udløses efter ændring af Recordset.
WillChangeField Udløses før værdien af Field-objektet ændres
WillChangeRecord Udløses før ændring af et record.
WillChangeRecordset Udløses før ændring af Recordset.
WillMove Udløses før ændring af当前位置 i Recordset.

Samling

Samling Beskrivelse
Fields Indikerer antallet af Field-objekter i dette Recordset-objekt.
Properties Inkluderer alle Property-objekter i alle Recordset-objekter.

Egenskaber i Fields samlingen

Egenskab Beskrivelse
Count

Returnerer antallet af projekter i fields samlingen. Starter ved 0.

Eksempel:

	countfields = rs.Fields.Count
	
Item(named_item/number)

Returnerer et specifikt projekt i fields samlingen.

Eksempel:

	itemfields = rs.Fields.Item(1)
	eller	
	itemfields = rs.Fields.Item("Name")
	

Egenskaber i Properties samlingen

Egenskab Beskrivelse
Count

Returnerer antallet af projekter i properties samlingen. Starter ved 0.

Eksempel:

	countprop = rs.Properties.Count
	
Item(named_item/number)

Returnerer en specifik projekt i properties samlingen.

Eksempel:

	itemprop = rs.Properties.Item(1)
	eller
	itemprop = rs.Properties.Item("Name")