テーブル上cl56-goldeng.users 、フィールドemail 作成時に、同じ値を1つ以上許可しないように指定されました。これは、UNIQUEを使用して行われます MySQLでのテーブル作成の識別子。 このリンクで、UNIQUE識別子の詳細を確認できます。
あなたはあなたがやることについて行くことができる2つのオプションがあります。
- 最初は、
emailの一意の制約を削除することです。 分野。これはコード内のロジックに完全に依存しますが、メールとして表示することはほぼ 常に一意であるため、これは推奨されません。
次のコマンドを実行して、一意のキーを削除できます。alter table [table-name] drop index [unique-key-index-name];
- 次に、
NULLを使用します 空の文字列の代わりに。私の仮定は、ユーザーの電子メールが存在しないときに空の文字列を設定しているということです。このシナリオでは、NULLを使用することをお勧めします 、データベースからデータを取得するときにそれを確認します。
NULLを挿入できます NULLを使用した値 MySQLの識別子 そのような声明:
INSERT INTO users (firstName,lastName,email)
VALUES ('Bob','Ross',NULL);
次に、NULLを確認します このデータにアクセスしている言語に関係なく、価値があります。