Einzelnen Beitrag anzeigen

jobo

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

AW: Automatiach erstellte Syntax

  Alt 6. Sep 2017, 06:02
pragma foreign keys off
dient wahrscheinlich dem "entspannten" Import von Daten ohne fortwährende Berücksichtigung der foreign keys.
Bedeutet, die Import Reihenfolge von Tabellen und enthaltenen Records ist (erstmal) egal, muss und wird nicht geprüft, ist schneller, erzeugt keine Foreign Key violations bei unpassenden Daten, Script läuft also durch.
Am Ende sollte dann ein "on" stehen, womit die Prüfung aktiviert wird.

Attach wurde schon genannt. Macht bei einer einzigen DB oder besser (original) Schema auch kein Sinn. Das Konvertierungswerkzeug dient aber offenbar auch dem Fall, dass mehrere mySQL Datenbanken / Schema konvertiert werden.
Attach ist dann die einzige Möglichkeit, Tabellennamen sauber zu unterscheiden, also mögliche Namenskonflikte zu vermeiden, indem es unterschiedliche Namen/Schema für die verschiedenen Ursprungsschema angibt.

Begin End oder Begin Commit macht aus dem ganzen eine Transaktion.
Wenn Du beabsichtigst, einzelne Schritte in (Delphi) Funktionen zu zerlegen, macht es vielleicht nur bedingt Sinn.
Meine Strategie wäre eher Alles oder Nichts, also Ausstieg bei Fehler und alle Änderungen verschwinden automatisch.
Bei einer Initalen DB Erzeugung käme das dem Wegwerfen der sqLite Datei gleich. Wäre auch okay.

Spätestens, wenn Du einen Stand (mit Daten) in SQLite hast, der für einen Software-Versionswechsel eine Änderung/Erweiterung des Datenmodells benötigt, ist Begin/End für alle Änderungen inkl. neuer (Stamm-)Daten vermutlich eher das, was man will.
Deine Delphi-Funktionen würden also eher nicht einzelne Tabellen anlegen, sondern eine Funktion spielt ein komplettes Änderungsskript ein.
Im Fehlerfall wird alles(!) auf den alten Stand zurückgesetzt > Rollback statt Commit.
Gruß, Jo
  Mit Zitat antworten Zitat