Freigeben über


CDaoDatabase::Close

Rufen Sie die Memberfunktion auf, um von einer Datenbank zu trennen und schließen öffnen Sie Recordsets, tabledefs und die Querydef, die der Datenbank zugeordnet sind.

virtual void Close( );

Hinweise

Es ist empfehlenswert, diese Objekte auf schließen, bevor Sie diese Memberfunktion aufrufen.Ein Objekt CDaoDatabase schließt, entfernt sie aus der Datenbankauflistung in zugeordneten Arbeitsbereich.Da Schließen nicht das CDaoDatabase-Objekt zerstört, können Sie das Objekt erneut verwenden, indem Sie die gleiche Datenbank oder eine andere Datenbank öffnen.

WarnhinweisVorsicht

Rufen Sie die Memberfunktion auf Update (wenn ausstehende Änderungen vorhanden) und alle Schließen-Memberfunktion auf Recordset-Objekte öffnen, bevor Sie eine Datenbank schließen.Wenn Sie eine Funktion beenden, die CDaoRecordset oder CDaoDatabase-Objekte auf dem Stapel deklariert, wird die Datenbank geschlossen, sind alle nicht gespeicherten Änderungen verloren, stellen alle anstehenden Transaktionen zurück, und alle anstehenden Bearbeitungen zu den Daten verloren.

WarnhinweisVorsicht

Wenn Sie versuchen, ein Datenbankobjekt zu schließen, während alle Recordset-Objekte geöffnet sind, oder, wenn Sie versuchen, ein Arbeitsbereichsobjekt zu schließen, während alle Datenbankobjekte, die diesem bestimmten Arbeitsbereich gehören, geöffnet sind, werden diese Recordset-Objekte geschlossen und alle ausstehenden Änderungen oder Updates zurückgesetzt.Wenn Sie versuchen, ein Arbeitsbereichsobjekt zu schließen, während alle Datenbankobjekte, die Sie gehören, geöffnet sind, schließt der Vorgang alle Datenbankobjekte, die diesem bestimmten Arbeitsbereichsobjekt gehören, das möglicherweise die unclosed Recordset-Objekte führt, die geschlossen werden.Wenn Sie nicht das Datenbankobjekt schließen, meldet MFC ein Assertionsfehler in Debugbuilds.

Wenn das Datenbankobjekt außerhalb einer Funktion definiert ist und Sie die Funktion beenden, ohne sie zu schließen, bleibt das Datenbankobjekt bis explizit geschlossenes geöffnet, oder das Modul, in dem sie definiert ist, liegt außerhalb des gültigen Bereichs.

Anforderungen

Header: afxdao.h

Siehe auch

Referenz

CDaoDatabase-Klasse

Hierarchien-Diagramm

CDaoDatabase::Open

CDaoRecordset::Close

CDaoWorkspace::Close

CDaoQueryDef::Close

CDaoTableDef::Close