vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
Erstellen von dynamischen Kontextmen?s - wann immer Sie sie brauchen!  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2024
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

Visual-Basic Einsteiger
DB (DAO) schließen funktioniert nicht 
Autor: CarloStein
Datum: 11.06.21 13:52

Wieder einmal ein Hallo an alle im Forum! (Bin nochmals lästig)

Win10 VB6 DAO

Ich schließe eine Datenbank und diese ist aber nicht geschlossen - soll heißen die *.idb ist noch offen und somit lässt sich die Datenbank nicht löschen. (Fehler Nr. 70)
Ich schließe wie folgt:

Public Sub CloseAhnenBewegDB()
EheBewegTab.Close
EZNBewegTab.Close
NotizBewegTab.Close
'Datenbank schließen
Db1.Close
Set EheBewegTab = Nothing
Set EZNBewegTab = Nothing
Set NotizBewegTab = Nothing
Set Db1 = Nothing
AhnenDBBewegOffen = 0
End Sub

Habe ich im Schließvorgang einen Fehler?
Ich möchte nach dem Schließen eine Datenbank löschen, geht aber nicht weil die *.idb noch offen ist!
Kann ich das Schließen nicht einfach erzwingen?

LG Karl

Beitrag wurde zuletzt am 11.06.21 um 14:00:17 editiert.
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: DB (DAO) schließen funktioniert nicht 
Autor: Souffleurlos
Datum: 16.06.21 16:54

Hallo Carlo,

ich mal wieder

Du schließt ja alles - außer die DBEngine.

Anderes Problem: Sicher bin ich mir da jetzt nicht wenn ich sage: Die Close-Methode auf die Tabledef-Objekte schließt ein Release in Form: DB.Tabledefs( ... ) -> Relase() mit ein, so dass die Angelegenheit aus COM-Sicht beendet ist und man sich ein Set to Nothing sparen kann, da der Obj-Pointer eh futsch ist.

Also noch Set DAO.DBEngine = Nothing setzen. Immer fein auf die Objekthierarchie achten, das ist so ähnlich wie mit den Ahnen *breitgrinz*
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Re: DB (DAO) schließen funktioniert nicht 
Autor: CarloStein
Datum: 16.06.21 20:28

Hallo Souffleurslos!

Wie so oft bist du der (diejenige) die sich um eine Antwort auf meine Frage bemüht! Dafür recht herzlichen Dank. Ich werde deinem Vorschlag folgen und Set DAODBEngine = Nothing setzen!
Ich bin nur jetzt im Urlaub und da gehöre ich der Familie. Programmieren verboten! Aber natürlich melde ich mich, sobald ich aus dem Urlaub zurück bin und deinen Vorschlag ausprobiert habe.

Nochmals herzlichen Dank und liebe Grüße
Karl
Themenbaum einblendenGesamtübersicht  |  Zum Thema  |  Suchen

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2024 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel