Obiekt CDaoWorkspace zarządza sesję o nazwie, chroniony hasłem baza danych z logowania do wylogowania, przez pojedynczego użytkownika. W większości przypadków nie trzeba będzie wiele obszarów roboczych, a nie musisz tworzyć obiekty jawne obszaru roboczego; Po otwarciu bazy danych i rekordów obiektów używają DAO do domyślnego obszaru roboczego. Jednakże w razie potrzeby można uruchomić wiele sesji w czasie przez tworzenie obiektów dodatkowego obszaru roboczego. Każdy obiekt obszaru roboczego może zawierać wiele obiektów bazy danych w jej własnej kolekcji baz danych. MFC obszar roboczy jest przede wszystkim z Menedżera transakcji, określając zestaw laczem baz danych w tym samym "transakcji miejsca."
Uwaga Klasy bazy danych DAO różnią się od klasy bazy danych MFC, oparte na Open Database Connectivity (ODBC). Wszystkie nazwy klasy bazy danych DAO mają prefiks „CDao". Ogólnie klas MFC na podstawie DAO nadają się bardziej niż klas MFC na podstawie ODBC. Klas opartych na DAO dostęp do danych przez aparat bazy danych Microsoft Jet, w tym sterowników ODBC. Obsługują one również operacje języka definicji danych (DDL), takich jak tworzenie baz danych i dodawania tabel i pól za pośrednictwem klas, bez konieczności bezpośrednio wywołać DAO.
Możliwości
Klasa CDaoWorkspace zawiera następujące:
Zabezpieczenia
MFC nie implementuje kolekcji użytkowników i grup w DAO, które są używane do kontroli bezpieczeństwa. Jeśli potrzebujesz tych aspektów DAO, musisz programować je samodzielnie poprzez bezpośrednie wywołania interfejsów obiektów DAO. Aby uzyskać informacje zobacz technicznych Uwaga 54.
Sposób użycia
Można użyć klasy CDaoWorkspace do:
Zazwyczaj używanie domyślna przestrzeń robocza jest niejawny — po otwarciu nowych obiektów CDaoDatabase lub CDaoRecordset . Jednak trzeba jawnie do niego dostęp — na przykład do właściwości aparatu bazy danych programu access lub kolekcji obszarów roboczych. Poniżej "Użycie domyślnego obszaru roboczego".
Tworzenie nowego obszaru roboczego, który już istnieje w kolekcji obszarów roboczych jest opisane w Tworzenie funkcji składowej. Obiekty obszaru roboczego nie utrzymują się w jakikolwiek sposób, między sesjami silnika datababase. Jeżeli aplikacji statycznie łączy MFC, kończącym się stosowania uninitializes aparatu bazy danych. Jeżeli aplikacji łączy z MFC dynamicznie, aparat bazy danych jest niezainicjowany, gdy biblioteki MFC DLL jest rozładowane.
Tylko do fu&nkcji w Professional i Enterprise Editionsnbsp; Statyczne łączenie MFC jest obsługiwany tylko w Visual C++ Professional i Enterprise. Aby uzyskać więcej informacji, zobacz Visual C++ wersje.
Jawnie otwarcia domyślna przestrzeń robocza lub otwarcie istniejącego obszaru roboczego w kolekcji obszarów roboczych, jest opisane w funkcji członek Open.
Zakończ sesję obszaru roboczego przez zamknięcie obszaru roboczego z bliskiej funkcji składowej. Zamknij zamyka innych baz danych, które użytkownik nie zamknięte wcześniej, wycofywanie wszelkie niezakończone transakcje.
Transakcje
DAO zarządza transakcji na poziomie obszaru roboczego; w związku z tym transakcje na obszar roboczy z wielu laczem baz danych stosuje się do wszystkich baz danych. Na przykład, jeśli dwie bazy danych nieprzydzielonych aktualizacji i wywołania CommitTrans, zobowiązane są wszystkie aktualizacje. Jeśli chcesz ograniczyć transakcji w jednej bazie danych, należy obiekt oddzielnego obszaru roboczego dla niego.
Użycie domyślnego obszaru roboczego
MFC używa DAO do domyślnego obszaru roboczego niejawnie w następujących okolicznościach:
Inne operacje
Innych operacji bazy danych są również dostarczane, takich jak naprawianie uszkodzonych bazy danych lub kompaktowania bazy danych.
Aby uzyskać więcej informacji na temat CDaoWorkspace, zobacz artykuł DAO obszaru roboczego. Uzyskać informacje dotyczące wywoływania bezpośrednio DAO oraz DAO zabezpieczeń zobacz technicznych Uwaga 54. Aby uzyskać więcej informacji na temat pracy ze źródłami danych ODBC za pośrednictwem obiektów DAO, zobacz artykuł DAO zewnętrzne: Praca z zewnętrznych źródeł danych. Aby uzyskać informacje, aparat bazy danych, zobacz artykuł DAO obszaru roboczego: aparat bazy danych. Wszystkie artykuły są w Visual C++ Programmer's Guide. Przykładowe bazy danych MFC DAOVIEW ilustruje użycie CDaoWorkspace.
# include lt;afxdao.h > & nbsp;
Czło&nkowie klasy |nbsp; Klasa podstawowa | Wykres hierarchii
Próbki Próbki MFC DAOVIEW
Zobacz też CDaoDatabase, CDaoRecordset, CDaoTableDef, CDaoQueryDef, CDaoException