MSVC++6 meets Access 2000 .mdb

dune911

Erfahrenes Mitglied
Hallihallo! :)
Gibt es eine Möglichkeit, Access 2000 Datenbanken via MSVC++6
aufzurufen und zu bearbeiten? Ich will eine Umgebung für meine
Datenbank schreiben, welche die Datenbank nicht so "verletzlich"
macht, soll heißen: nicht sofort beim ändern speichern sondern
vorher nochmal meldung bringen und so weiter... Wenn ich direkt
über Access Formulare arbeite ist mir ein Datenverlust zu riskant...

Danke für Tips und Hinweise :)
 
ich hab zwar noch nie aus einem c++-programm auf eine datenbank zugegriffen, aber dazu müsste es auch bei visual c++ entsprechende steuerelemente und klassen geben.
zumindest DAO-komponenten sollten in den höheren versionen vorhanden sein. auf jeden fall würde ich trotzdem nach möglichkeiten für ado-zugriffe suchen.
die recordset-objekte kannst du dann solange bearbeiten, wie du willst. die daten werden erst mit der update-methode in die datenbank geschrieben. ausnahmen davon sind natürlich insert-, addnew- und delete-methoden.
 
Unter Visual C++ kann man eine ACCESS 2000 mdb nicht mit DAO ansprechen. Dazu muss man ADO nehmen! Dies ist unter Visual C++ nicht ganz so einfach, da es keine Wrapper-Klassen für ADO gibt! Also kein Recordset und so!

Du findest aber beim Codeproject eine Wrapper-Klasse für den Zugriff mit ADO auf ACCESS 2000 Datenbank!!!
 
warum sollte man access 2000 nicht über dao ansprechen können? sicher ist es sinnvoller, gleich ado-zugriffe zu benutzen. aber per dao müsste das auch gehen. ob ich die dao-/ado-bibliotheken in vc++ oder vb verwende, bleibt sich ja eigentlich gleich. die libraries bieten in beiden sprachen die gleichen möglichkeiten.
und natürlich gibt es bei ado auch recordset-objekte. nur das database-objekt aus der dao-umgebung wurde durch ein connection-objekt ersetzt.

http://www.mut.com/media/buecher/VCPLUS6/data/kap15.htm
 
Verbinde Visual C++ mit der MFC! Sorry!!

In der MFC gibt nun mal nur die ODBC (CDatabase, CRecordset etc.) und DAO (CDaoRecordset, CDaoDatabase etc.) Klassen um eine Datenbank anzusprechen! Keine Klassen für ADO (ADO ist recht neu)!
Der Classwizard erkennt die Access2000 mdb nicht!

Natürlich geht es über die ADO-API!!!! Aber dann programmiert man nicht mehr Objektorientiert!
 
danke für die antworten, ich konnte leider erst jetzt antworten! :)

stimmt es, dass die standard-version von msvc++ 6.0 kein odbc
unterstützt? ist es auch ohne odbc möglich, auf mdb's zuzugreifen?
 
wenn du keine odbc verbindung haben willst, dann würd ich dir dao empfehlen.

Jedoch da du mit Access 2000 arbeitest musst du noch eine Codezeile einfügen:

AfxGetModuleState()->m_dwVersion = 0x0601; //Damit DAO 3.6 verwendet wird
 
Jetzt bin ich endverwirrt, musste ich doch vor knapp 12 Monaten eine Anwendung auf ODBC umbauen, weil DAO nicht mehr unterstützt wird (CDaoDatabase usw.). Verwendete als Anschauungsmaterail dazu das DBFETCH(?)-Example.

Geht DAO jetzt doch noch?

Und hat Euer ADO eine Goldkante?:rolleyes:
 

Neue Beiträge

Zurück