検索

ホームページ  >  に質問  >  本文

mysql UNIQUE的条件

ALTER TABLE  `table` ADD  `unionid` VARCHAR( 255 ) NOT NULL

然后设置唯一索引

ALTER TABLE  `table` ADD UNIQUE (
`unionid`
)

提示

1062 - Duplicate entry '' for key 'unionid'

请问这是为什么呢?

伊谢尔伦伊谢尔伦2770日前714

全員に返信(2)返信します

  • PHP中文网

    PHP中文网2017-04-17 15:34:49

    最初の SQL 文: table テーブルに unionid 列を追加しました。これは空ではない文字列であるため、初期値は空の文字列 '' です。

    2 番目の SQL 文:

    テーブルの table 列に一意制約を設定しますが、一意制約の前提は unionid 列の値が繰り返されないことです。 unionid 列の値はすべて null 文字列 unionid であるため、'' がレポートされます。 Duplicate entry '' for key 'unionid'

    解決策: まず、

    の値を繰り返しないように修正してから、列に一意の制約を追加します。 unionid

    返事
    0
  • PHP中文网

    PHP中文网2017-04-17 15:34:49

    インデックスを追加するときは、データベースに直接アクセスして操作すると、コマンド プロンプトが表示されるので、何が間違っているかがわかります。

    返事
    0
  • キャンセル返事