Home > General > SQLite3 + シェルスクリプトの罠

SQLite3 + シェルスクリプトの罠

SQLite3 でデータベースを構築し、SQL 文の入力の手間を省くためにシェルスクリプトから SELECT 文を発行させようとしてうまくいかずはまったのでメモメモ。

#!/bin/sh
NO=$1
SQL="SELECT no,ans FROM TABLE_NAME WHERE no = $NO"
COMMAND="sqlite3 DB_NAME '$SQL'"
$COMMAND
exit 0


という answer.sh シェルスクリプトを作り、

$ ./answer.sh 1

のように実行しても、

SQL error: unrecognized token: "'select"

というエラーを吐くばかりで動いてくれません。

これを動かすには以下のようにする必要があるようです。

#!/bin/sh
NO=$1
SQL="SELECT no,ans FROM TABLE_NAME WHERE no = $NO;"
COMMAND="sqlite3 DB_NAME"
echo $SQL | $COMMAND
exit 0


これならば考えた通りに動きました。

相談に乗り原因を調べてくれた上により解決法まで教えてくれた MMAX さんに感謝!(´Д⊂

0
Comment Form

Google search for: SQLite3 シェルスクリプトの罠

Trackback:No Trackbacks

TrackBack URL for this entry
Sorry, no trackback pings are accepted.
Listed below are links to weblogs that reference
SQLite3 + シェルスクリプトの罠 from まやろぐnounai
トラックバック
このエントリにトラックバックはありません
このトラックバックURLを使ってこの記事にトラックバックを送ることができます。 もしあなたのブログがトラックバック送信に対応していない場合にはこちらのフォームからトラックバックを送信することができます。.

Home > General > SQLite3 + シェルスクリプトの罠

Feeds

Page Top