LabVIEWForum.de - Access-Datenbank synchronisieren

LabVIEWForum.de

Normale Version: Access-Datenbank synchronisieren
Du siehst gerade eine vereinfachte Darstellung unserer Inhalte. Normale Ansicht mit richtiger Formatierung.
Hallo zusammen,

ich habe eine Frage, die nichts direkt mit LabVIEW zu tun hat.
Hat jemand von Euch eine Idee, wie ich Werte aus einer Access 97 - DB (mdb-file) regelmäßig in eine Access 2007 - DB (accdb-file) schreiben kann. Die 2007-DB wird dann von LabVIEW angesprochen und auch mit Werten beschrieben.
Die Werte müssen von der neuen DB aber nicht in die alte DB geschrieben werden. Ich brauche nur die Werte aus der alten DB in der neuen DB.

Hintergrund ist folgender:
Ich habe hier einen Prüfstand (Windows NT, alter OPC-Server,...), der Werte in eine mdb-Datei schreibt. Diese Datei liegt auf dem Netz. Nun dauert aber der Netzzugriff (Provider=Microsoft.Jet.OLEDB.4.0) mit meinem LabVIEW-Programm sehr lange und das Programm (Reporterstellung) braucht ewig um die Daten zu holen. Wandle ich nun die mdb-Datei in eine accdb-Datei und greife darauf zu (im gleichen Netzordner, mit Provider=Microsoft.ACE.OLEDB.12.0), dann geht das richtig zackig.
Da ich den Prüfstand aber nicht ändern kann/darf/will, möchte ich nun eine accdb-Datei, aus der ich die Werte für meinen Report holen (und ein paar neue Kunden anlegen) kann. Die Messwerte vom Prüfstand sollen regelmäßig aus der mdb-Datei in die accdb-Datei synchronisiert werden. Die Kunden,... müssen allerdings nicht aus der mdb-Datei in die accdb-Datei geschrieben werden.

Ich hoffe das war so weit verständlich. Hat da vielleicht jemand Ahnung davon?

Gruß Markus
Hab' mich mal umgeschaut. Mit 'ner Replikation funktioniert das wohl nicht. Wenn es eine automatische Konvertierung von Access 97 auf Access 2007 geben würde, könnte ich mir evtl. was basteln. Dann würde ich die alte DB in eine aktuelle 2007er-DB wandeln und die Daten aus der neuen DB in die neu gewandelte DB übertragen (ist nur eine Tabelle). Aber eine programmatische Konvertierung gibt's glaub' auch nicht? Unsure

Hat schon mal jemand so was in die Richtung gemacht?

Gruß Markus
Dann mach' ich mal mit meinem Monolog weiter.... AnsageBig Grin
Ich habe festgestellt, dass der Zugriff auf die mdb-Datei nur so extrem langsam ist, wenn mehrere User darauf zugreifen, d.h. ich werde es wohl so machen, dass ich die gesamte Datei vom Prüfstand vor der Erstellung des Protokolls kopiere und die Änderungen, die beim Protokoll erstellen manuell in die neu kopierte mdb-Datei eingetragen werden, am Programmende wieder auf die originale Prüfstand-mdb schreibe.

Ich hoffe, Euch mit dem Thema nicht all zu sehr gelangweilt zu haben. Big Grin
Wenn trotzdem noch jemand was dazu weiß, dann immer her damit. Wink

Gruß Markus
Schau dich mal nach ADO (=neu) & DAO (=alt, keine Weiterentwicklung...) um.

Es gibt sowohl ActiveX Objekte ,der Name ADO (= ActiveX Data Object) lässte es ja vermuten, als auch .NET Schweinereien (System.Data.OleDB).

Damit könntest du die DB auslesen und die neuen RS in die neuen DB einfügen. Theoretisch...


Gruß SeBa
Das schau' ich mir an, wenn ich dazu komme. Danke.

Gruß Markus
Referenz-URLs