AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Datenbanken Delphi SQLite Dump mit FireDAC
Thema durchsuchen
Ansicht
Themen-Optionen

SQLite Dump mit FireDAC

Ein Thema von Mavarik · begonnen am 1. Mai 2017 · letzter Beitrag vom 2. Mai 2017
Antwort Antwort
Seite 1 von 2  1 2      
Benutzerbild von Mavarik
Mavarik

Registriert seit: 9. Feb 2006
Ort: Stolberg (Rhld)
4.144 Beiträge
 
Delphi 10.3 Rio
 
#1

SQLite Dump mit FireDAC

  Alt 1. Mai 2017, 13:18
Datenbank: SQLite • Version: 3 • Zugriff über: 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
  Mit Zitat antworten Zitat
Benutzerbild von himitsu
himitsu

Registriert seit: 11. Okt 2003
Ort: Elbflorenz
44.184 Beiträge
 
Delphi 12 Athens
 
#2

AW: SQLite Dump mit FireDAC

  Alt 1. Mai 2017, 15:55
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?
$2B or not $2B
  Mit Zitat antworten Zitat
Benutzerbild von Mavarik
Mavarik

Registriert seit: 9. Feb 2006
Ort: Stolberg (Rhld)
4.144 Beiträge
 
Delphi 10.3 Rio
 
#3

AW: SQLite Dump mit FireDAC

  Alt 1. Mai 2017, 16:02
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?!

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

Kann ich den das Dump Kommando nativ an die SQLite.Dll senden?
  Mit Zitat antworten Zitat
jobo

Registriert seit: 29. Nov 2010
3.072 Beiträge
 
Delphi 2010 Enterprise
 
#4

AW: SQLite Dump mit FireDAC

  Alt 1. Mai 2017, 17:13
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..
Gruß, Jo
  Mit Zitat antworten Zitat
Benutzerbild von Mavarik
Mavarik

Registriert seit: 9. Feb 2006
Ort: Stolberg (Rhld)
4.144 Beiträge
 
Delphi 10.3 Rio
 
#5

AW: SQLite Dump mit FireDAC

  Alt 1. Mai 2017, 19:22
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.
  Mit Zitat antworten Zitat
Ghostwalker

Registriert seit: 16. Jun 2003
Ort: Schönwald
1.299 Beiträge
 
Delphi 10.3 Rio
 
#6

AW: SQLite Dump mit FireDAC

  Alt 2. Mai 2017, 06:15
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.
Uwe
e=mc² or energy = milk * coffee²
  Mit Zitat antworten Zitat
Benutzerbild von Mavarik
Mavarik

Registriert seit: 9. Feb 2006
Ort: Stolberg (Rhld)
4.144 Beiträge
 
Delphi 10.3 Rio
 
#7

AW: SQLite Dump mit FireDAC

  Alt 2. Mai 2017, 09:38
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...
  Mit Zitat antworten Zitat
Ghostwalker

Registriert seit: 16. Jun 2003
Ort: Schönwald
1.299 Beiträge
 
Delphi 10.3 Rio
 
#8

AW: SQLite Dump mit FireDAC

  Alt 2. Mai 2017, 09:51
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).
Uwe
e=mc² or energy = milk * coffee²
  Mit Zitat antworten Zitat
Benutzerbild von Mavarik
Mavarik

Registriert seit: 9. Feb 2006
Ort: Stolberg (Rhld)
4.144 Beiträge
 
Delphi 10.3 Rio
 
#9

AW: SQLite Dump mit FireDAC

  Alt 2. Mai 2017, 10:09
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?
  Mit Zitat antworten Zitat
Ghostwalker

Registriert seit: 16. Jun 2003
Ort: Schönwald
1.299 Beiträge
 
Delphi 10.3 Rio
 
#10

AW: SQLite Dump mit FireDAC

  Alt 2. Mai 2017, 10:41
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.
Uwe
e=mc² or energy = milk * coffee²
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 17:20 Uhr.
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