Obiekt Recordset ADO
- Poprzednia strona ADO Record
- Następna strona ADO Stream
Przykład
- GetRows
- Ten przykład pokazuje, jak używać metody GetRows.
Obiekt Recordset
Obiekt Recordset ADO służy do przechowywania zbioru rekordów z tabeli bazy danych. Obiekt Recordset składa się z rekordów i kolumn (pól).
W ADO ten obiekt jest najbardziej ważny i najczęściej używany do operacji na danych bazy danych.
ProgID
set objRecordset=Server.CreateObject("ADODB.recordset")
Gdy otwierasz Recordset po raz pierwszy, wskaźnik aktualnego rekordu wskazuje na pierwszy rekord, podczas gdy atrybuty BOF i EOF są ustawione na False. Jeśli nie ma rekordów, atrybuty BOF i EOF są ustawione na True.
Obiekt Recordset może obsługiwać dwa typy aktualizacji:
- Natychmiastowa aktualizacja - W momencie wywołania metody Update, wszystkie zmiany są natychmiast zapisywane do bazy danych.
- Aktualizacja w jednym kroku - provider przechowuje wiele zmian, a następnie przesyła je do bazy danych za pomocą metody UpdateBatch.
W ADO zdefiniowano 4 różne typy kursorów (wskaźników):
- Dynamiczny kursor - Pozwala na przeglądanie dodatków, zmian i usunięć dokonanych przez innych użytkowników
- Kursor zbioru kluczy - Podobny do dynamicznego kursora, różni się tym, że nie możesz zobaczyć dodatków innych użytkowników oraz zapobiega dostępowi do zapisanych przez innych użytkowników rekordów. Zmiany danych dokonane przez innych użytkowników są nadal widoczne.
- Statyczny kursor - dostarcza statyczną kopię zbioru danych, którą można używać do wyszukiwania danych lub tworzenia raportów. W dodatku, dodania, zmiany i usunięcia dokonane przez innych użytkowników będą niewidoczne. Jest to jedyny dozwolony typ kursora, gdy otwiera się obiekt Recordset klienta.
- Statyczny kursor - dostarcza statyczną kopię zbioru danych, którą można używać do wyszukiwania danych lub tworzenia raportów. W dodatku, dodania, zmiany i usunięcia dokonane przez innych użytkowników będą niewidoczne. Jest to jedyny dozwolony typ kursora, gdy otwiera się obiekt Recordset klienta.
Typ kursora można ustawić za pomocą właściwości CursorType lub parametru CursorType w metodzie Open.
Komentarz:Nie wszyscy dostawcy (providers) wspierają wszystkie metody i właściwości obiektu Recordset.
Atrybut
Atrybut | Opis |
---|---|
AbsolutePage | Ustawia lub zwraca wartość, która określa stronę w obiekcie Recordset. |
AbsolutePosition | Ustawia lub zwraca wartość, która określa pozycję bieżącego rekordu w obiekcie Recordset (numer pozycji). |
ActiveCommand | Zwraca obiekt Command związany z obiektem Recordset. |
ActiveConnection | Ustawia lub zwraca definicję połączenia, jeśli połączenie jest zamknięte, lub aktualny obiekt Connection, jeśli połączenie jest otwarte. |
BOF | Zwraca true, jeśli pozycja bieżącego rekordu znajduje się przed pierwszym rekordem, w przeciwnym razie zwraca false. |
Bookmark | Ustawia lub zwraca znacznik, który zapisuje pozycję bieżącego rekordu. |
CacheSize | Ustawia lub zwraca liczbę rekordów, które mogą być buforowane. |
CursorLocation | Ustawia lub zwraca lokalizację usługi kursora. |
CursorType | Ustawia lub zwraca typ kursora obiektu Recordset. |
DataMember | Ustawia lub zwraca nazwę członka danych, który można pobrać z obiektu wskazywanego przez właściwość DataSource. |
DataSource | Określa obiekt, który zawiera dane do reprezentowania jako obiekt Recordset. |
EditMode | Zwraca stan edycji bieżącego rekordu. |
EOF | Zwraca true, jeśli pozycja bieżącego rekordu znajduje się po ostatnim rekordzie, w przeciwnym razie zwraca false. |
Filter | Zwraca filtr dla danych obiektu Recordset. |
Index | Ustawia lub zwraca nazwę bieżącego indeksu obiektu Recordset. |
LockType | Ustawia lub zwraca wartość, która określa typ blokady, który można指定 w przypadku edycji rekordu w Recordset. |
MarshalOptions | Ustawia lub zwraca wartość, która określa, które rekordy są zwracane do serwera. |
MaxRecords | Ustaw lub zwróć maksymalną liczbę rekordów z zapytania, które zwróci Recordset. |
PageCount | Zwróć liczbę stron danych w obiekcie Recordset. |
PageSize | Ustaw lub zwróć maksymalną liczbę rekordów na jednej stronie obiektu Recordset. |
RecordCount | Zwróć liczbę rekordów w obiekcie Recordset. |
Sort | Ustaw lub zwróć nazwę pola, które jest podstawą sortowania Recordset. |
Source | Ustaw wartość ciągła, lub referencję do obiektu Command, lub zwróć wartość ciągą, która wskazuje, gdzie znajduje się źródło danych obiektu Recordset. |
State | Zwróć wartość opisującą, czy obiekt Recordset jest otwarty, zamknięty, łączy się, wykonuje się lub pobiera dane. |
Status | Zwróć stan bieżącego rekordu w partii aktualizacji lub innych dużych operacjach. |
StayInSync | Ustaw lub zwróć, czy odniesienie do podrzędnych rekordów zmienia się, gdy zmienia się pozycja rekordu nadrzędnego. |
Metoda
Metoda | Opis |
---|---|
AddNew | Utwórz nowy rekord. |
Cancel | Anuluj jedno wykonanie. |
CancelBatch | Anuluj jednorazową aktualizację w partii. |
CancelUpdate | Anuluj zmiany dokonane na jednym rekordzie obiektu Recordset. |
Clone | Utwórz kopię istniejącego Recordset. |
Close | Zamknij Recordset. |
CompareBookmarks | Porównaj dwa znaczniki. |
Delete | Usuń jeden rekord lub grupę rekordów. |
Find | Szukaj jednego rekordu spełniającego określone warunki w Recordset. |
GetRows | Kopiuj wiele rekordów z obiektu Recordset do dwuwymiarowego tablicy. |
GetString | Zwróć Recordset jako ciąg znaków. |
Move | Przenieś wskaźnik rekordu w obiekcie Recordset. |
MoveFirst | Przenieś wskaźnik rekordu do pierwszego rekordu. |
MoveLast | Przenieś wskaźnik rekordu do ostatniego rekordu. |
MoveNext | Przenieś wskaźnik rekordu do następnego rekordu. |
MovePrevious | Przenieś wskaźnik rekordu do poprzedniego rekordu. |
NextRecordset | Usuń bieżący obiekt Recordset przez wykonanie serii poleceń i wróć do następnego Recordset. |
Open | Otwórz element bazy danych, który umożliwia dostęp do rekordów tabeli, wyników zapytania lub zapisanych Recordset. |
Requery | Aktualizuje dane w Recordset, ponownie wykonując zapytanie, na którym opiera się obiekt. |
Resync | Odświeża dane w bieżącym Recordset z oryginalnej bazy danych. |
Save | Zapisuje obiekt Recordset do pliku lub obiektu Stream. |
Seek | Szuka w indeksie Recordset, aby szybko zlokalizować wiersz pasujący do określonej wartości i uczynić go bieżącym wierszem. |
Supports | Zwraca wartość logiczną, która definiuje, czy obiekt Recordset obsługuje określony typ funkcji. |
Update | Zapisuje wszystkie zmiany dokonane dla pojedynczego rekordu w obiekcie Recordset. |
UpdateBatch | Zapisuje wszystkie zmiany w Recordset do bazy danych. Używaj w trybie partycji aktualizacji. |
Zdarzenie
Uwaga: Nie można obsługiwać zdarzeń za pomocą VBScript lub JScript (tylko języki Visual Basic, Visual C++ i Visual J++ mogą obsługiwać zdarzenia).
Zdarzenie | Opis |
---|---|
EndOfRecordset | Zdarzenie wywoływane, gdy próbujesz przejść do wiersza poza końcem Recordset. |
FetchComplete | Zdarzenie wywoływane po odczytaniu wszystkich rekordów w asynchronicznym działaniu. |
FetchProgress | Zdarzenie wywoływane regularnie w trakcie asynchronicznego działania, zgłaszające, ile rekordów zostało odczytanych. |
FieldChangeComplete | Zdarzenie wywoływane po zmianie wartości obiektu Field |
MoveComplete | Zdarzenie wywoływane po zmianie aktualnej pozycji w Recordset. |
RecordChangeComplete | Zdarzenie wywoływane po zmianie rekordu. |
RecordsetChangeComplete | Zdarzenie wywoływane po zmianie Recordset. |
WillChangeField | Zdarzenie wywoływane przed zmianą wartości obiektu Field |
WillChangeRecord | Zdarzenie wywoływane przed zmianą rekordu. |
WillChangeRecordset | Zdarzenie wywoływane przed zmianą Recordset. |
WillMove | Zdarzenie wywoływane przed zmianą aktualnej pozycji w Recordset. |
Zbiór
Zbiór | Opis |
---|---|
Fields | Indykuje liczbę obiektów Field w tym Recordset. |
Properties | Zawiera wszystkie obiekty Property w obiekcie Recordset. |
Atrybuty zbioru Fields
Atrybut | Opis |
---|---|
Count |
Zwraca liczbę elementów w zbiorze fields. Zaczyna się od 0. Przykład: countfields = rs.Fields.Count |
Item(nazwa_elementu/numer) |
Zwraca określony element zbioru fields. Przykład: itemfields = rs.Fields.Item(1) lub itemfields = rs.Fields.Item("Name") |
Atrybuty zbioru Properties
Atrybut | Opis |
---|---|
Count |
Zwraca liczbę elementów w zbiorze properties. Zaczyna się od 0. Przykład: countprop = rs.Properties.Count |
Item(nazwa_elementu/numer) |
Zwraca określony element zbioru properties. Przykład: itemprop = rs.Properties.Item(1) lub itemprop = rs.Properties.Item("Name") |
- Poprzednia strona ADO Record
- Następna strona ADO Stream