SQLite 3に.sqlファイルをインポートするにはどうすればよいですか?


97

次の内容の.sqlファイルがあります。

#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)

このファイルをSQLiteにインポートして、これらが自動的に作成されるようにするにはどうすればよいですか?


sqlite3 DB.db <db.sqlエラー:不完全なSQL:create table server(name varchar(50)、ipaddress varchar(15)、id init)create table client(name varchar(50)、ipaddress varchar(15)、id init )このエラーはどういう意味ですか?> .read db.sqlとsqlite3 DB.db <db.sqlの両方の方法を試しました
webminal.org

回答:


163

sqliteプロンプトから:

sqlite> .read db.sql

または:

cat db.sql | sqlite3 database.db

また、SQLは無効です- ;ステートメントの最後に必要です。

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

sqlite3 DB.db <db.sqlエラー:不完全なSQL:create table server(name varchar(50)、ipaddress varchar(15)、id init)create table client(name varchar(50)、ipaddress varchar(15)、id init )このエラーはどういう意味ですか?> .read db.sqlとsqlite3 DB.db <db.sql ... Thanks
webminal.orgの

1
ありがとうそれは今働いています。私は逃した。「-」などの無効な文字が含まれています。今では大丈夫です。ありがとう!!!
webminal.org 2010年

@lakshmipathi、それが機能している場合は、回答の横にある投票数の下のチェックマークをクリックして、質問に回答した2つの回答のいずれかを承認済みとしてマークできます。
ドミニクロジャー

58

を使用しsqlite3 database.sqlite3 < db.sqlます。ファイルにSQLite用の有効なSQLが含まれていることを確認する必要があります。


私も(Windowsコマンドライン構文)。ありがとう。確かに遅いです。
Barton

2
私は、40 MB以上の.sqlファイルからせっかちなビルドを取得し、終了しましたsqlite3 database.sqlite3 <db.sql in sqlite> .read db.sql。代替案は同じくらい遅いです、それは判明しました。
Barton

17

または、Windowsのコマンドラインプロンプト/バッチファイルからこれを行うこともできます。

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

ここで、DB.dbはデータベースファイル、db.sqlは実行/インポートするSQLファイルです。


これは私にとってはうまくいきましたが、ターミナルでコマンドとしてsqlite3を実行したので、sqlite3 DB.db ".read db.sql"
Bugbeeb

弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.