Un oggetto CDaoWorkspace gestisce una sessione denominata del database protetto da password di accesso di alla disconnessione da un singolo utente. Nella maggior parte dei casi, non avrete bisogno di più aree di lavoro, e non è necessario creare oggetti esplicita dell'area di lavoro; Quando aprite gli oggetti di database e recordset, usano area di lavoro predefinita di DAO. Tuttavia, se necessario, è possibile eseguire più sessioni alla volta mediante la creazione di oggetti aggiuntivi dell'area di lavoro. Ogni oggetto dell'area di lavoro può contenere più oggetti di database aperto nella propria collezione di basi di dati. In MFC, un'area di lavoro è principalmente un gestore delle transazioni, specificare un set di database open tutti nella stessa "spazio della transazione".
Nota Le classi di database DAO si distinguono dalle classi MFC database basate su Open Database Connectivity (ODBC). Tutti i nomi di classe di database DAO hanno il prefisso "CDao". In generale, le classi MFC basate su DAO sono più capaci di classi MFC basate su ODBC. Le classi basate su DAO accesso ai dati attraverso il motore di database Microsoft Jet, tra cui i driver ODBC. Essi supportano anche le operazioni di Data Definition Language (DDL), come la creazione di database e l'aggiunta di tabelle e campi tramite le classi, senza dover chiamare direttamente DAO.
Funzionalità
Classe CDaoWorkspace fornisce i seguenti:
Sicurezza
MFC non implementa le collezioni di utenti e gruppi in DAO, che vengono utilizzati per il controllo di sicurezza. Se avete bisogno di quegli aspetti di DAO, è necessario programmare li te stesso tramite chiamate dirette a interfacce DAO. Per informazioni, vedere 54 Note tecniche.
Utilizzo
È possibile utilizzare la classe CDaoWorkspace per:
Di solito l'utilizzo dell'area di lavoro predefinita è implicito — quando si apre nuovi oggetti CDaoDatabase o CDaoRecordset . Ma potrebbe essere necessario accedervi in modo esplicito — per esempio, di proprietà di motore di database access o insieme Workspaces. Vedere "Uso implicito dell'area di lavoro predefinita" qui sotto.
Creazione di una nuova area di lavoro che non esiste già nell'insieme Workspaces è descritto sotto la funzione membro Create . Gli oggetti dell'area di lavoro non vengono mantenute in alcun modo tra le sessioni di motore datababase. Se l'applicazione si collega MFC in modo statico, ponendo fine all'applicazione non Inizializza il motore di database. Se l'applicazione si collega dinamicamente con MFC, il motore di database è non inizializzato quando la DLL MFC viene scaricata.
Fu&nzionalità solo in Professional ed Enterprise edizioninbsp; Collegamento statico a MFC è supportato solo in Visual C++ Professional ed Enterprise edizioni. Per ulteriori informazioni, vedere Edizioni di Visual C++.
In modo esplicito l'area di lavoro predefinita di apertura, o l'apertura di un'area di lavoro esistente dell'insieme di aree di lavoro, viene descritta sotto la funzione membro Open.
Terminare una sessione dell'area di lavoro mediante la chiusura dell'area di lavoro con la funzione membro stretta . Close chiude tutti i database che hanno non chiuso in precedenza, rollback di eventuali transazioni non.
Transazioni
DAO gestisce le transazioni a livello di area di lavoro; quindi, le transazioni su un'area di lavoro con più database aperti si applicano a tutti i database. Ad esempio, se si hanno due database aggiornamenti non vincolati e si chiama CommitTrans, tutti gli aggiornamenti sono impegnati. Se si desidera limitare le transazioni per un singolo database, avete bisogno di un oggetto separato workspace per esso.
Uso implicito dell'area di lavoro predefinita
MFC utilizza l'area di lavoro predefinita di DAO in modo implicito nelle circostanze seguenti:
Altre operazioni
Sono disponibili anche altre operazioni di database, come riparare un database danneggiato o compattazione di un database.
Per ulteriori informazioni su CDaoWorkspace, vedere l'articolo Area di lavoro DAO. Per informazioni su chiamando direttamente DAO e sulla protezione di DAO, vedere 54 nota tecnica. Per ulteriori informazioni sull'utilizzo di origini dati ODBC tramite DAO, vedere l'articolo DAO esterni: lavorare con origini dati esterne. Per informazioni sul motore di database, vedere l'articolo area di lavoro DAO: del motore di Database. Tutti gli articoli sono in manuale del programmatore di Visual C++. L'esempio di Database MFC DAOVIEW viene illustrato l'utilizzo di CDaoWorkspace.
# include lt;afxdao.h > & nbsp;
Membri della classe | Classe base | Gerarchia Chart
Campio&nenbsp; Esempio MFC DAOVIEW
Vedere a&nchenbsp;CDaoDatabase, CDaoRecordset, CDaoTableDef, CDaoQueryDef, CDaoException