2016-07-07 6 views
-2

Ich erstellte einige SQLite-Tabellen-Schema mit Python. Wenn ich den SQLite3-Client verwende und den Befehl .schema ausstelle, kann ich sehen, dass die Ausgabe wie in der SQL-Quelldatei vorgeformt ist, die ich als Argument für die Funktion execscript() benutzt habe.Wie Formatiere SQLite3 Server Schema Ausgabe

Gibt es irgendeine Methode, die ich verwenden könnte, um das SQL (wie es in einigen IDE gemacht wird) für die Ausgabe des Befehls .schema "automatisch zu formatieren"? Formatieren Sie die SQL so sollte es ...

+0

„SQL so, wie es sein sollte:“ Was bedeutet das? – ravenspoint

+0

eingerückt, Schlüsselwörter Großbuchstaben ... Dies ist rein für kosmetische Zwecke. Ich weiß, dass das Beste, was ich tun kann, ist, das SQL selbst zu formatieren, aber ich frage auch nach dem Fall, in dem die Tabellendeklaration schlecht formatiert war und ich immer noch eine schön formatierte Ausgabe haben möchte, wenn ich den Befehl _.schema_ ablege. –

+0

Fragen Sie nach Code, der das SQL neu formatiert, oder nach einer Bibliothek oder einem Tool? –

Antwort

1

In der neuesten Version (3.13.0) sein, Sie haben

>sqlite3 test.dat 
SQLite version 3.13.0 2016-05-18 10:57:30 

sqlite> create table test (a integer,b integer, c integer,d float,e text, f primary key); 

sqlite> .schema 
CREATE TABLE test (a integer,b integer, c integer,d float,e text, f primary key); 

sqlite> .schema --indent 
CREATE TABLE test(
    a integer, 
    b integer, 
    c integer, 
    d float, 
    e text, 
    f primary key 
); 
+0

Thx. Scheint in meiner Distribution gebrochen zu sein, aber ich werde später nachsehen. –

+1

Sie brauchen 3.13.0 https://www.sqlite.org/releaselog/3_13_0.html – ravenspoint

+0

Funktioniert gut. Vielleicht, weil ich die Datenbank seitdem neu erstellt habe? Es funktioniert nicht für Ansichten, aber es ist cool. –