Zeos zum bearbeiten einer JET und einer SQLite - Datenbank

Für Themen zu Datenbanken und Zugriff auf diese. Auch für Datenbankkomponenten.
Antworten
wp_xyz
Beiträge: 4864
Registriert: Fr 8. Apr 2011, 09:01

Re: Zeos zum bearbeiten einer JET und einer SQLite - Datenba

Beitrag von wp_xyz »

Bzgl. ZEOS habe ich das noch in meinen Bookmarks: https://www.delphi-treff.de/tutorials/d ... -firebird/

mschnell
Beiträge: 3444
Registriert: Mo 11. Sep 2006, 10:24
OS, Lazarus, FPC: svn (Window32, Linux x64, Linux ARM (QNAP) (cross+nativ)
CPU-Target: X32 / X64 / ARMv5
Wohnort: Krefeld

Re: Zeos zum bearbeiten einer JET und einer SQLite - Datenba

Beitrag von mschnell »

VB_Lazarus hat geschrieben:falls interesse besteht, ich habe mal einen einfachen Converter (MSAccess -> SQLite) für mich gebaut.
Dieser ist speziell auf eine bestimmte Datenbankstruktur ausgelegt.
Aber man kann vielleicht von diesem Code Ideen sammel.

Das würde mir bestimmt auf die Sprünge helfen.
Es wäre toll, wenn Du mir den Code schicken könntest !!!!!

Vielen Dank,
-Michael

mschnell
Beiträge: 3444
Registriert: Mo 11. Sep 2006, 10:24
OS, Lazarus, FPC: svn (Window32, Linux x64, Linux ARM (QNAP) (cross+nativ)
CPU-Target: X32 / X64 / ARMv5
Wohnort: Krefeld

Re: Zeos zum bearbeiten einer JET und einer SQLite - Datenba

Beitrag von mschnell »

af0815 hat geschrieben: Viele Dinge sind auch gleich, auch zu den DB-Komponenten von Delphi.

Da ich noch irgendwo ein altes Delphi 7 habe, müsste ich den alten XP-Rechner anwerfen und die Doku da finden ...
-Michael

wp_xyz
Beiträge: 4864
Registriert: Fr 8. Apr 2011, 09:01

Re: Zeos zum bearbeiten einer JET und einer SQLite - Datenba

Beitrag von wp_xyz »

Für eine allgemeine Lösung müsste man sich die Exporter auf der Lasche DataExport ansehen: es gibt da Exporter nach CSV, XML, Json etc, nur leider nicht nach Sqlite3. Es sind eigentlich immer nur ein paar Methoden, die zu implementieren sind. Sollte nicht übermäßig schwer sein. Nur will ich mir jetzt nicht schon wieder ein Projekt aufbinden.

mschnell
Beiträge: 3444
Registriert: Mo 11. Sep 2006, 10:24
OS, Lazarus, FPC: svn (Window32, Linux x64, Linux ARM (QNAP) (cross+nativ)
CPU-Target: X32 / X64 / ARMv5
Wohnort: Krefeld

Re: Zeos zum bearbeiten einer JET und einer SQLite - Datenba

Beitrag von mschnell »

wp_xyz hat geschrieben:Bzgl. ZEOS habe ich das noch in meinen Bookmarks: https://www.delphi-treff.de/tutorials/d ... -firebird/

... Es gibt also doch eine Doku ... :)
-Michael

mschnell
Beiträge: 3444
Registriert: Mo 11. Sep 2006, 10:24
OS, Lazarus, FPC: svn (Window32, Linux x64, Linux ARM (QNAP) (cross+nativ)
CPU-Target: X32 / X64 / ARMv5
Wohnort: Krefeld

Re: Zeos zum bearbeiten einer JET und einer SQLite - Datenba

Beitrag von mschnell »

wp_xyz hat geschrieben: Exporter nach CSV, XML, Json etc, nur leider nicht nach Sqlite3.

??? CSV, XML und Json sind Text-Dateien. SQLite ist eine Datenbank. Das würde ich dann nicht "Export" nennen.

-Michael

Benutzeravatar
af0815
Lazarusforum e. V.
Beiträge: 6197
Registriert: So 7. Jan 2007, 10:20
OS, Lazarus, FPC: FPC fixes Lazarus fixes per fpcupdeluxe (win,linux,raspi)
CPU-Target: 32Bit (64Bit)
Wohnort: Burgenland
Kontaktdaten:

Re: Zeos zum bearbeiten einer JET und einer SQLite - Datenba

Beitrag von af0815 »

csv nach sql habe ich. Das ist doch nur String gebastel.

BTW: Können die Exporter nicht sql ? mal nachsehen.

Edit: Gibts doch fpSQLExport im Verzeichnis \fpcsrc\packages\fcl-db\src\export


Edit2: Bei der suche nach der guten alten BDE Datapump bin ich auf folgendes gestossen:
Databsecomparer (not tested)
http://www.clevercomponents.com/downloa ... wnload.asp

Eine Datapump gibt es auch dort. Gerade probiert, nur IB
Blöd kann man ruhig sein, nur zu Helfen muss man sich wissen (oder nachsehen in LazInfos/LazSnippets).

VB_Lazarus
Beiträge: 90
Registriert: Do 23. Dez 2010, 19:10
OS, Lazarus, FPC: Windows 10/11 32/64bit, L 2.2.0 32bit, FPC 3.2.2 32bit
CPU-Target: 32Bit

Re: Zeos zum bearbeiten einer JET und einer SQLite - Datenba

Beitrag von VB_Lazarus »

mschnell hat geschrieben:
VB_Lazarus hat geschrieben:falls interesse besteht, ich habe mal einen einfachen Converter (MSAccess -> SQLite) für mich gebaut.
Dieser ist speziell auf eine bestimmte Datenbankstruktur ausgelegt.
Aber man kann vielleicht von diesem Code Ideen sammel.

Das würde mir bestimmt auf die Sprünge helfen.
Es wäre toll, wenn Du mir den Code schicken könntest !!!!!

Vielen Dank,
-Michael


Anbei wie gewnscht. Hoffe er hilft.
Dateianhänge
DB_Converter.zip
(575.11 KiB) 59-mal heruntergeladen

mschnell
Beiträge: 3444
Registriert: Mo 11. Sep 2006, 10:24
OS, Lazarus, FPC: svn (Window32, Linux x64, Linux ARM (QNAP) (cross+nativ)
CPU-Target: X32 / X64 / ARMv5
Wohnort: Krefeld

Re: Zeos zum bearbeiten einer JET und einer SQLite - Datenba

Beitrag von mschnell »

af0815 hat geschrieben:BTW: Können die Exporter nicht sql ? mal nachsehen.

"SQL" ist auch eine Text-Datei.

-Michael

wp_xyz
Beiträge: 4864
Registriert: Fr 8. Apr 2011, 09:01

Re: Zeos zum bearbeiten einer JET und einer SQLite - Datenba

Beitrag von wp_xyz »

SQLExport schreibt eine Text-Datei mit den SQL-Anweisungen, die man ausführen muss, um die Daten in die Ziel-Datenbank zu übertragen. Das wäre eine gute Lösung, allerdings enthält sie keine Anweisungen, wie die Zieltabellen zu erzeugen sind. Im Prinzip müsste man das FormatSettings.StatementKind um Varianten skCreateTable und skCreateTableAndInsert erweitern.

Benutzeravatar
af0815
Lazarusforum e. V.
Beiträge: 6197
Registriert: So 7. Jan 2007, 10:20
OS, Lazarus, FPC: FPC fixes Lazarus fixes per fpcupdeluxe (win,linux,raspi)
CPU-Target: 32Bit (64Bit)
Wohnort: Burgenland
Kontaktdaten:

Re: Zeos zum bearbeiten einer JET und einer SQLite - Datenba

Beitrag von af0815 »

Die Frage ist: Wie oft will man das machen ?

Beim letzen mal habe ich mir die Struktur und die Daten in SQL-Files konvertiert und das dann ablaufen lassen. Sooft bis die Migration fehlerfrei war. Deshalb auch in dem Beispiel auf Github das Scripting, das ZEOS ganz einfach besser beherrscht (TZSQLProzessor).

BTW: ZEOS hat noch ein paar Vorteile, die man erst sieht, wenn man viel mit Serverdatenbanken arbeitet. (z.B. Metadaten, RO-Datensets)

Andreas
Blöd kann man ruhig sein, nur zu Helfen muss man sich wissen (oder nachsehen in LazInfos/LazSnippets).

mschnell
Beiträge: 3444
Registriert: Mo 11. Sep 2006, 10:24
OS, Lazarus, FPC: svn (Window32, Linux x64, Linux ARM (QNAP) (cross+nativ)
CPU-Target: X32 / X64 / ARMv5
Wohnort: Krefeld

Re: Zeos zum bearbeiten einer JET und einer SQLite - Datenba

Beitrag von mschnell »

VB_Lazarus hat geschrieben:Anbei wie gewnscht. Hoffe er hilft.

Ich werde damit testen...
-Michael

mschnell
Beiträge: 3444
Registriert: Mo 11. Sep 2006, 10:24
OS, Lazarus, FPC: svn (Window32, Linux x64, Linux ARM (QNAP) (cross+nativ)
CPU-Target: X32 / X64 / ARMv5
Wohnort: Krefeld

Re: Zeos zum bearbeiten einer JET und einer SQLite - Datenba

Beitrag von mschnell »

VB_Lazarus hat geschrieben:Anbei wie gewünscht. Hoffe er hilft.


Logischerweise gibt es beiom Starten eine Fehlermeldung. In einem ewig langen Text steht irgendwo. "Datenquellenname wurde nicht gefunden und es wurde kein Standard-treiber angegeben". Ist ja auch klar, ich muss ihm irgendwo sagen wo die Datenbank-Datei steht. Ich habe aber keine Ahnung wie das zu machen ist :( .

Außerdem muss man vermutlich auf dem Rechner noch eine Access - DLL installieren (musste ich für SQLite ja auch.)

Man hat mir erzählt, man könne Konfiguration der Connection in der Ide machen. Also habe ich sowas versucht. Wenn ich z.B. versuche in der ODBC-Connection "Connected" auf True zu setzen, bekomme ich eine Meldung die enthält: "MicosofODBC Driver Manager Der Datenquellenname wurde nicht gefunden".

-Michael

Benutzeravatar
theo
Beiträge: 10461
Registriert: Mo 11. Sep 2006, 19:01

Re: Zeos zum bearbeiten einer JET und einer SQLite - Datenba

Beitrag von theo »

Hast du MS Access installiert?
Falls ja, exportiere doch daraus: https://support.spatialkey.com/export-d ... -csv-file/
Import wie gesagt so: https://www.sqlite.org/cvstrac/wiki?p=ImportingFiles

wp_xyz
Beiträge: 4864
Registriert: Fr 8. Apr 2011, 09:01

Re: Zeos zum bearbeiten einer JET und einer SQLite - Datenba

Beitrag von wp_xyz »

Zuerst mal: Bist du auf Windows? Wenn ja, dann brauchst du eigentlich nichts weiteres, um mdb-Dateien lesen zu können. Bei mir geht's auch, und ich habe kein Access. Das ist gerade das Schöne, am allseits verhassten mdb-Format, dass es auf Windows ohne Zusatz-DLLs verwendbar ist. Der DBConverter läuft bei mir ohne Probleme an, kommt allerdings in der Zeile mit der "Straße" wegen der üblichen UTF8-Probleme ins Straucheln. Nach dem Ändern in

Code: Alles auswählen

  SQLQuery_Adressen.FieldByName('Strasse').AsString:=SQLQueryODBCAdressen.FieldByName(UTF8ToWinCP('Straße')).AsString;

lief das Programm aber problemlos durch. All die UTF8Encode-Aufrufe sind unnötig.

Vielleicht ist dein Problem ein 64-Bit-Problem? Der mdb-Treiber funktioniert, soviel ich weiß, nur unter 32 Bit. Probier's mal auch mit dem accdb-Treiber (2. Combobox-Eintrag in dem Programm).

Antworten