選択を実行すると機能しますが、更新を実行するとスクリプトがブロックされるのはなぜですか?

選択を実行すると機能しますが、更新を実行するとスクリプトがブロックされるのはなぜですか?

更新タイプのクエリを実行しようとすると、スクリプトが中断され、SQLコンソールが静的に保持されます。このコマンドは、スクリプト内のすべてのクエリを実行します。

res=$(mysql --defaults-file=conf_file  --skip-column-names -e "$query")

「次へ」を選択すると正常に動作し、正しい結果が得られます。

query="SELECT field FROM table WHERE id=1 and id_ext=1;"

ただし、この更新プログラムを実行すると、最後に入れなかったかのようにSQLコンソールは続行されません。

query="UPDATE field SET data=2 WHERE id=1 and id_ext=1;"

ベストアンサー1

更新構文が正しいかどうかはわかりません。一般的な更新構文は次のとおりです。

更新テーブル名セットフィールド名= NEW_VALUE WHERE条件...

おすすめ記事