
やってみました再現するDB ユーザーと DB インスタンス (既存のもの上で実行) が必要なので、Mysql CLI で次の 2 つのコマンドを実行しました。
create user '${test}'@'localhost' identified by '${psw}';
create database ${test};
次のような出力が得られました:
1 行目のエラー 1396 (HY000): 'test'@'localhost' の CREATE USER 操作が失敗しました
もちろん、エラーの原因はユーザーがすでに存在しているためです。
私の質問
すでに同じ値 ( ) を持つ DB ユーザーと DB インスタンスがある場合、上記のコマンドが既存のデータに対して実行されるようにするにはどうすればよいでしょうかtest
?
回答後に更新
mysql -V
もたらすもの:
mysql Ver 14.14 Distrib 5.7.20、Linux (x86_64) 用、EditLine ラッパー使用
答え1
if not exists
クエリで使用するだけです。例:
create if not exists user '${test}'@'localhost' identified by '${psw}';
または
create database if not exists ${test};
MySQL のバージョンは異なる可能性があります。正しいバージョンを参照してください。ただし、詳細情報は次の場所にあります。