テーブル上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
を確認します このデータにアクセスしている言語に関係なく、価値があります。