2

私はコードに関しては比較的初心者なので、明らかなことを見逃している場合はご容赦ください。私の問題は、SQLite3 (正確にはバージョン 3.7.15.2) を Powershell で動作させることです。コンピューターに SQLite3 をインストールし、SQLite3 シェルは単独で正常に動作しますが、Powershell 経由で SQLite3 を使用しようとすると、エラー メッセージが表示されます。

sqlite3Powershell に入力しただけでは、認識されたコマンドではないと表示されます。ただし、Powershell で次のコマンドを使用して基本的な SQL スクリプトを実行しようとすると、代わりに次のエラー メッセージが表示されます。

sqlite3 ex1.db < ex1.sql

error message: "The '<' operator is reserved for future use

これがすべて言われているので、何が問題になる可能性がありますか?

御時間ありがとうございます!

4

4 に答える 4

6

"<" (標準入力) リダイレクトは、Powershell ではサポートされていません。

おそらく、コマンドをファイルに入れて試してみることができますsqlcmd.txt

Get-Content sqlcmd.txt | sqlite3.exe > output.txt

PATH に含まれていない場合は、exe のフル パスを使用するように注意してください。

于 2013-02-08T04:58:10.030 に答える
0

.\Powershellでは、現在のディレクトリにあるexeを実行する場合は、次のようにプレフィックスを付ける必要があります。

.\sqlite3 ex1.db

フルパスも使用できます。

"drive-letter:\path_to_sqlite\sqlite3" ex1.db
于 2013-02-08T07:07:01.410 に答える
-2

慎重にグーグルで調べた結果、これが実際には正しい答えであると判断しました。

get-content ext1.sql | sqlite3 ext1.db

もともとここにあった: https://stackoverflow.com/a/17077104/1469375

JPの回答は「output.txt」という名前の空のファイルを作成しますが、sqlcmd.txtの内容をファイルに配置しません。

于 2013-09-09T04:21:54.087 に答える