Obiekt klasy CDatabase reprezentuje połączenie z zewnętrznym źródłem danych,
poprzez które użytkownik korzysta z danych. Źródło danych jest dowolnym źródłem
zarządzanym przez swój własny mechanizm zarządzania. Przykładowo możliwe jest
połączenie z bazą w formacie SQL Server, MS Access, Borland dBase i innych.
Dodatkowo można utworzyć wiele obiektów CDatabase i korzystać z nich w
programie. Jest to prosty sposób na jednoczesną obsługę danych pochodzących
z różnych źródeł.
Uwaga:
Jeśli planujemy jako mechanizm dostępu do danych wykorzystać technikę
DAO (Data Access Objects) powinniśmy korzystać ze specjalnie
do tego celu zdefiniowanej klasy CDaoDatabase.
Klasa CDatabase przeznaczona jest do obsługi źródeł danych
opartych o mechanizm ODBC (Open Database Connectivity).
Aby użyć obiektu CDatabase należy po wywołaniu konstruktora użyć metody
OpenEx(). Powoduje to nawiązanie połączenia. Następnie konieczne
jest utworzenie obiektu klasy CRecordset
(najczęściej klasy dziedziczącej), za pomocą którego faktycznie operujemy
na zbiorze rekordów z bazy. Jako parametr wywołania konstruktora podajemy
wskaźnik do utworzonego właśnie obiektu CDatabase. Po zakończeniu korzystania
z danych należy wykonać metodę Close(), która zamknie
połączenie. Metoda ta zamyka także wszystkie obiekty CRecordset nie
zamknięte wcześniej.
| Metody |
Opis |
| GetConnect | Zwraca tzw. łańcuch znakowy
połączenia ODBC (ang. connection string) zawierający
parametry połączenia ze źródłem danych. |
| IsOpen | Sprawdza czy obiekt jest aktualnie powiązany
ze źródłem danych. |
| GetDatabaseName | Zwraca nazwę bazy danych
(jest to atrybut pamiętany w większości standardowych
baz danych). |
| CanUpdate | Sprawdza czy baza dopuszcza modyfikacje. |
| CanTransact | Sprawdza czy baza obsługuje transakcje. |
| SetLoginTimeout | Ustawia ilość sekund po upływie
których próba połączenia z bazą zostanie zaniechana. |
| SetQueryTimeout | Ustawia ilość sekund po upływie
których próba dostępu do bazy danych za pomocą
poleceń Open(), AddNew(),
Edit() lub Delete() zostanie zaniechana. |
| GetBookmarkPresistence | Sprawdza czy zakładki
(ang. bookmark) pobrane wcześniej są jeszcze aktualne.
Unieważnienie zakładek następuje np. po wydaniu polecenia
Requery(). |
| GetCursorCommitBehaviour | Zwraca zachowanie
kursora bazy danych po zamknięciu transakcji. |
| GetCursorRollbackBehaviour | Zwraca zachowanie
kursora bazy danych po unieważnieniu transakcji. |