![]() |
Datenbank: SQLite • Version: 3 • Zugriff über: Delphi2007
SQLite einzelne Tabellen extrahieren, importieren, merge ?
Guten Abend,
ich habe ein Programm das mit SQLite arbeitet. Das funktioniert bisher ganz gut. Nun wollte ich aber noch zusätzlich einen kleinen Editor für die Daten basteln. Damit soll jeder User des Programms Daten erstellen und weitergeben können. Ich möchte dabei aber nicht immer die komplette Datenbank austauschen sondern nur einzelne Tabellen oder auch Daten aus anderen Versionen der selben Tabelle anhängen können. Geht sowas in SQLite? Ich bin kein Datenbank Experte, kann aber die Grundzüge der SQL Syntax. Ich habe lange mit Paradox gearbeitet. Da war das einfach, weil jede Tabelle eine eigene Datei war. Jetzt bei SQLite beinhaltet aber ein File die gesamte Datenbank. Deshalb komme ich grade nicht weiter. Über Hilfe und Denkanstöße, würde ich mich freuen :). Gruß, Andreas |
AW: SQLite einzelne Tabellen extrahieren, importieren, merge ?
SQLScripte könntest Du hiermit verarbeiten (also ausführen):
![]() Die Frage ist, wo Du sie her bekommst. Eine Möglichkeit: Um Daten auszutauschen, musst Du sie im Quellsystem auslesen und zu einem Insert Befehl umbauen. Im Zielsystem dann das Script laufen lassen (s.o.).Denkbar wären auch Änderungs- und Löschbefehle. An der Stelle kommt schon die rote Kelle (ist ja schließlich Karneval). Leicht denkbar, wie "gefährlich" solche Befehle sein können. Also Thema Löschen und Ändern erstmal ausblenden. Andere Möglichkeit: Wenn Du den Datenaustausch mit Hilfe Deines eigenen Programms etwas lenken willst, empfiehlt sich der Austausch über CSV oder TSV Dateien. Dein Programm übernimmt dann Export und Import, nach Bedarf. Hierbei ist durch das Verfahren automatisch klar, dass nichts geändert oder gelöscht werden kann. Es gibt nur Datenerweiterungen. Das mal zum Einstieg. weitere Möglichkeit zum Datentausch: XML Dateien |
AW: SQLite einzelne Tabellen extrahieren, importieren, merge ?
Ein SQLite File lässt sich nicht einfach in die Tabellenfiles aufsplitten, wie ich es bei Paradox hatte?
Die Tabelle als Textdatei exportieren sehe ich nicht als schwer... aber früher bei Paradox war ich es gewohnt, einfach nur die Tabellendatei zu ersetzen. Das war für mich "praktischer". Naja, ich tüftel morgen mal rum. Vielen Dank :). |
AW: SQLite einzelne Tabellen extrahieren, importieren, merge ?
Natürlich könnte man bei SQLite Dateien tauschen. Wenn Dir das Prinzip ausreicht..
Meinen Link hast Du vermutlich nicht gelesen. Nur mal als Idee, auch wenn es nicht so gedacht ist: Es hindert Dich niemand daran, pro Tausch-Tabelle eine Datei, also eine SQLite DB, anzulegen. Ein Select mit Join zwischen diesen Tabellen ist dann wohl kaum möglich. P.S.: Das geht auch. |
AW: SQLite einzelne Tabellen extrahieren, importieren, merge ?
hmmm... das wäre ein völlig neuer Ansatz... das Blöde ist ja, das eigentliche Programm mit der SQLite DB ist schon fertig. Jetzt geht es nur darum für die Daten einen Editor zu bauen, der auch import/export kann.
Aber ich habe gestern Deinen Link noch gelesen und bin über ".dump" gestolpert. Damit sollte das gehen, wenn ich es richtig lese. Nur wie ich beim Import die Daten anhänge, hab ich noch nicht rausbekommen. Aber das ist auch nicht das Wichtigste. |
AW: SQLite einzelne Tabellen extrahieren, importieren, merge ?
Wenn das Dump im MOde SQL durchführst, brauchst Du zum Import nur SQLITE3.Exe das enstandene InsertScript zum Fraß vorzuwerfen.
|
AW: SQLite einzelne Tabellen extrahieren, importieren, merge ?
Brauche ich das auch schon zum Export? Ich nutze die Aducom Komponenten und dachte ich könnte den Dump einfach per Query absetzen. Aber da bekomme ich nur Fehlermeldungen, das der Querycode fehlerhaft ist. Schon direkt beim .mode csv.
Wenn ich das ausserhalb des Programms in der SQLite shell mache, geht es aber *kopfkratz*. |
AW: SQLite einzelne Tabellen extrahieren, importieren, merge ?
Ich kenne die Komponenten nicht. Die Dump Funktion haben sie aber wahrscheinlich nicht implementiert.
|
AW: SQLite einzelne Tabellen extrahieren, importieren, merge ?
Ok, dann mache ich das per ShellExecute und sqlite3.exe. Finde ich zwar umständlich aber geht wohl nicht anders.
Vielen Dank für Deine Hinweise und Hilfe :). |
AW: SQLite einzelne Tabellen extrahieren, importieren, merge ?
Zitat:
|
AW: SQLite einzelne Tabellen extrahieren, importieren, merge ?
Ja, hab ich doch extra korregiert :|
|
Alle Zeitangaben in WEZ +1. Es ist jetzt 16:26 Uhr. |
Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz