2010-01-12 6 views
64

ich SQL-Dateien haben, die den folgenden Inhalt haben:Wie importiere ich .SQL-Dateien in SQLite 3?

#cat db.sql 
create table server(name varchar(50),ipaddress varchar(15),id init) 
create table client(name varchar(50),ipaddress varchar(15),id init) 

Wie importiere ich diese Datei in SQLite, so dass diese automatisch erstellt werden?

+0

sqlite3 DB.db .read db.sql und sqlite3 DB.db

+0

@lakshmipathi, siehe meine Bearbeitung. –

Antwort

112

Von einer SQLite-Prompt:

sqlite> .read db.sql 

Oder:

cat db.sql | sqlite3 database.db 

Auch Ihre SQL ist ungültig - Sie ; am Ende Ihrer Aussagen müssen:

create table server(name varchar(50),ipaddress varchar(15),id init); 
create table client(name varchar(50),ipaddress varchar(15),id init); 
+0

sqlite3 DB.db .read db.sql und sqlite3 DB.db

+1

danke Es funktioniert jetzt. Ich habe es verpasst; und enthalten ungültige Zeichen wie "-". Jetzt ist es in Ordnung. Danke !!! –

+0

@lakshmipathi, wenn es funktioniert, können Sie eine der beiden Antworten markieren, die Ihre Frage als angenommen beantwortet haben, indem Sie auf das Häkchen neben der Antwort klicken. –

44

Verwenden Sie sqlite3 database.sqlite3 < db.sql. Sie müssen sicherstellen, dass Ihre Dateien gültiges SQL für SQLite enthalten.

+0

danke Eifion !! Für deine Seele funktioniert es auch gut. –

+0

Ich auch (Windows-Befehlszeilensyntax). Vielen Dank. Natürlich ist es langsam. – Barton

+1

Ich wurde ungeduldig Gebäude aus einer 40 + Mb. SQL-Datei, beendet sqlite3 database.sqlite3 .read db.sql. Die Alternative ist genauso langsam, stellt sich heraus. – Barton

6

Alternativ Sie können dies über eine Windows-Befehlszeileneingabeaufforderung/Batch-Datei tun:

sqlite3.exe DB.db ".read db.sql" 

Wo DB.db die Datenbankdatei ist, und db.sql ist die SQL-Datei auszuführen/Import.

8

Sie können auch tun:

sqlite3 database.db -init dump.sql 
Verwandte Themen