- 2008-11-03 (Mon) 03:00
- General
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 さんに感謝!(´Д⊂
- Newer: コマンド名と同じ名前のバッチファイルは作成しない
- Older: ひなひな・ふなふなこと雛さんへ
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
トラックバック
このエントリにトラックバックはありません
