128

次のコマンドを使用して、sqlite3バージョン3.7.7、unix11.4.2を起動します。

sqlite3 auction.db

ここで、auction.dbはまだ作成されていません。

sqlite> auction.db < create.sql;

私にこのエラーを与えます:near "auction": syntax error

スクリプトを実行するにはどうすればよいですか?

4

6 に答える 6

181

SQLite 自体の内部からではなく、シェルからフィードする必要がcreate.sqlあります。sqlite3

$ sqlite3 auction.db < create.sql

SQLite のバージョンの SQL は<ファイルを理解していませんが、シェルは理解しています。

于 2012-07-25T06:11:16.360 に答える
157

これを行うには多くの方法があります。1 つの方法は次のとおりです。

sqlite3 auction.db

に続く:

sqlite> .read create.sql

一般に、SQLite プロジェクトには本当に素晴らしいドキュメントがあります。ドキュメントの前に Google にアクセスすることがよくあることは知っていますが、SQLite の場合、ドキュメントは本当に最高のテクニカル ライティングです。クリーンで、明確で、簡潔です。

于 2012-07-25T06:14:57.047 に答える
1
sqlite3 -init create.sql auction.db .quit

コマンドを入力すると、man sqlite3「OPTIONS」の下に次のように表示されます。

-init file SQL ステートメントとメタコマンドの混合を含むことができるfile
       からコマンドを読み取り、実行します。

そして「SQLITE META-COMMANDS」の下:

.quit このプログラムを終了します

参照: SQLite の場合のコマンド ライン シェル: 3. sqlite3 への特別なコマンド (ドット コマンド)

また、コマンドを入力すると、sqlite3 -help「OPTIONS」の下に次のように表示されます。

-init FILENAME 読み取り/名前付きファイルの処理

于 2021-11-07T13:40:11.380 に答える