Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Datenbanken (https://www.delphipraxis.net/15-datenbanken/)
-   -   Delphi SQLite Dump mit FireDAC (https://www.delphipraxis.net/192560-sqlite-dump-mit-firedac.html)

Mavarik 1. Mai 2017 12:18

Datenbank: SQLite • Version: 3 • Zugriff über: FireDAC

SQLite Dump mit FireDAC
 
Hallo Zusammen!

Kann es sein, dass es mit FireDAC nicht möglich ist einen Dump einer SQLite Datenbank in eine Textdatei zu machen?

Muss man hierfür das sqlite3 Commandlinetool benutzen?

Finde ich es nur nicht oder gibt es kein TFDDump oder sowas?

Mavarik

himitsu 1. Mai 2017 14:55

AW: SQLite Dump mit FireDAC
 
Das Problem ist, dass leider nicht das DBMS den DUMP generiert, sondern die Client-Komponente.
Da müsste also TFDDump alle möglichen DBMS und deren Besonderheiten mit sich rumschleppen, um einen korrekten SQL-Dump generieren zu können.

Drum gibt es vielleicht auch keine Komponente dafür?

Mavarik 1. Mai 2017 15:02

AW: SQLite Dump mit FireDAC
 
Zitat:

Zitat von himitsu (Beitrag 1369614)
Das Problem ist, dass leider nicht das DBMS den DUMP generiert, sondern die Client-Komponente.
Da müsste also TFDDump alle möglichen DBMS und deren Besonderheiten mit sich rumschleppen, um einen korrekten SQL-Dump generieren zu können.

Drum gibt es vielleicht auch keine Komponente dafür?

Gut, also gibt es keinen Zugriff auf den SQLite Dump?! :stupid:

Es könnte ja über den Phy.Sqlite.Driver gehen...

Kann ich den das Dump Kommando nativ an die SQLite.Dll senden?

jobo 1. Mai 2017 16:13

AW: SQLite Dump mit FireDAC
 
Zitat:

Zitat von Mavarik (Beitrag 1369616)
Kann ich den das Dump Kommando nativ an die SQLite.Dll senden?

Was ist "nativ" für Dich?
Schau mal hier of SO, vielleicht brauchbar für Deine Zwecke:
http://stackoverflow.com/questions/7...sqlite3-tables

1.Antwort
Zitat:

I would use the following to get a CSV file, which I can import into almost everything..

..snip..

If you want to reinsert into a different SQLite database then:
..snip..

Mavarik 1. Mai 2017 18:22

AW: SQLite Dump mit FireDAC
 
Zitat:

Zitat von jobo (Beitrag 1369633)
Was ist "nativ" für Dich?
Schau mal hier of SO, vielleicht brauchbar für Deine Zwecke:
http://stackoverflow.com/questions/7...sqlite3-tables

Genau das ist was ich nicht will... Ich möchte sicherlich nicht extra auf einem Kundenrechner ein Commandlinetool installieren.

Ich möchte innerhalb meiner Software für den Fall das der Check einen Fehler meldet, einfach "nur" die Datenbank per Dump in einen Stream / TStringlist exportieren um danach eine neue Datenbank mit diesen Informationen zu füttern.

Ghostwalker 2. Mai 2017 05:15

AW: SQLite Dump mit FireDAC
 
Du könntest dir via SQlite-Api eine Dump-Funktion bauen.

Dazu:

1. Schritt: Tabellen analysieren und entsprechende Create-Statements bauen -> ab in die textdatei damit
2. Schritt: Aus den Daten entsprechende Insert-Statemnts bauen -> ab in die Textdatei damit

feddich is der Dump.

Mavarik 2. Mai 2017 08:38

AW: SQLite Dump mit FireDAC
 
Zitat:

Zitat von Ghostwalker (Beitrag 1369745)
Du könntest dir via SQlite-Api eine Dump-Funktion bauen.

Dazu:

1. Schritt: Tabellen analysieren und entsprechende Create-Statements bauen -> ab in die textdatei damit
2. Schritt: Aus den Daten entsprechende Insert-Statemnts bauen -> ab in die Textdatei damit

feddich is der Dump.

OK... Vielleicht habe ich es falsch verstanden - wenn man nach SQLite Repair googled bekommt man immer als Antwort ein Repair gibt es nicht - was eigentlich schon der tot in meinen Augen ist, aber lassen wir das mal außer Acht - Als Möglichkeit wird immer gesagt - Dump -> Neue Datenbank... Wenn der Dump nicht mehr kann als ich mit einem Select *, dann ist das natürlich für die Katz. Es geht ja darum aus einer defekten SQLite Datei die Nativen Daten zu holen...

Ghostwalker 2. Mai 2017 08:51

AW: SQLite Dump mit FireDAC
 
Wenn die Datei schon zerbröselt ist (physikalisch), wirst du da ganz schlechte Karten haben.

Du kannst natürlich versuchen, die Datei als ganz normale Binär-Datei zu handhaben und das ganze
selbst zu analysieren und versuchen zu retten was zu retten ist. Das Dateiformat ist

http://www.sqlite.org/fileformat2.html hier
beschrieben. Aber ob der Aufwand das ganze wert ist, steht auf einem anderen Blatt.

Ich persönlich würde, bevor es passiert, lieber eine autom. Backup-Funktion einbauen (siehe Backup-Extension von SQlite).

Mavarik 2. Mai 2017 09:09

AW: SQLite Dump mit FireDAC
 
Zitat:

Zitat von Ghostwalker (Beitrag 1369762)
Ich persönlich würde, bevor es passiert, lieber eine autom. Backup-Funktion einbauen (siehe Backup-Extension von SQlite).

Wie oft willst Du den ein Backup machen? Und wohin? Auf die ggf. gleiche defekt externe USB-Platte?
Oder auf einen Stick den der User erst einlegen muss?

Ghostwalker 2. Mai 2017 09:41

AW: SQLite Dump mit FireDAC
 
Zitat:

Zitat von Mavarik (Beitrag 1369765)
Zitat:

Zitat von Ghostwalker (Beitrag 1369762)
Ich persönlich würde, bevor es passiert, lieber eine autom. Backup-Funktion einbauen (siehe Backup-Extension von SQlite).

Wie oft willst Du den ein Backup machen? Und wohin? Auf die ggf. gleiche defekt externe USB-Platte?
Oder auf einen Stick den der User erst einlegen muss?

<IRONIE>
Wohin willst du den den Dump machen ? Auf die gleiche defekte externe USB-Platte ? oder auf einen Stick
den der User erst einlegen muss ?
</IRONIE>

Sorry.

Wenn die ganze Platte geschrottet ist, brauchst du keinen Dump mehr, denn dann hast du erstmal das Problem überhaupt auf die Platte zugreifen zu können.

Wohin man ein Backup spielt, ist davon abhängig, welche Gegebenheiten man hat. Ist ein Netzwerk (evtl. mit Server) vorhanden ? ist eine Internetverbindung vorhanden ? Welche Platten sind vorhanden ? Gibt es einen CD-/DVD-Brenner ? Gibt es einen Streamer ?

Es ist auch Abhängig für welche Zielgruppe dein Projekt ist (eher privater Nutzer oder Firma).

Ich versuch hier lediglich dir eine Alternative auf zu zeigen, so das sich das Problem einer Reparatur garnicht erst stellt. :)


Alle Zeitangaben in WEZ +1. Es ist jetzt 17:24 Uhr.
Seite 1 von 2  1 2      

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz