0

特定のテーブルの名前も可変ですが、1つのテーブルがクエリしたいユーザーで構成されている、同様のmysqlデータベースが多数あるとします。

同様のものが必要だと思いますが、引用符を正しく取得するのに苦労します。

user_id = $(mysql --user=$dba --password=$dbp $dbn -e "SELECT id FROM ${user_tbl} WHERE username = \"guest\"")

追加: OK、最初のクエリがどうあるべきかがわかったので、もう 1 つの質問があります。それは、テーブル名の変数を使用してフィールドを再度更新する方法です。

mysql --user=$dba --password=$dbp $dbn -e "UPDATE ${user_tbl} SET password=${pass} WHERE username = 'guest'"
次のエラーが発生します: 「フィールド リスト」の列「some_encrypted_pa​​ss」が不明です

4

1 に答える 1

1
user_id=$(mysql --user=$dba --password=$dbp $dbn -e "SELECT id FROM ${user_tbl} WHERE username = 'guest'")

文字列を検索するには、一重引用符を使用する必要がありguestます。

ところで、なぜそのメソッドを使用しているのですか? それはより良く、より安全で信頼できるものになります。

于 2013-10-19T10:04:53.877 に答える