MySQL:使列唯一?

时间:2011-07-04 05:09:56

标签: mysql phpmyadmin unique-constraint

我有一张正在制作的桌子。我意识到一些列应该是唯一的。进入phpMyAdmin并更改这些列以使其独一无二是否安全?

ALTER TABLE  `foo` ADD UNIQUE ( `bar` )

5 个答案:

答案 0 :(得分:10)

  1. 您没有重复项 - >将会毫无问题地应用密钥
  2. 你确实有重复 - >将给出错误消息,您的数据没有发生任何事情
  3. All是唯一的,除了几行中包含NULL之外,仍然会应用唯一约束,因为在检查唯一值时不会检查NULL(您可以让整个表在唯一字段中具有NULL值而不会显示任何错误消息)。
  4. 还有一件事,如果你有一个prod数据库,你还必须有一个你可以毫无恐惧地测试的开发数据库,​​对吗?

答案 1 :(得分:6)

按照以下步骤从phpmyadmin面板应用唯一列值:

转到表格结构。点击下面的唯一关键字 -

enter image description here

点击确认框中的确定 -

enter image description here

列的唯一值约束将适用。 或者你可以运行mysql查询:

ALTER TABLE用户ADD UNIQUE(电子邮件);

答案 2 :(得分:1)

如果表上预先存在的值不是唯一的,那么这只会是一个问题,否则我认为不会有任何问题。

答案 3 :(得分:1)

如果这些列中已存在某些重复值,则会产生错误。如果这些列中没有任何重复值,那么你会没事的。

答案 4 :(得分:0)

我遇到了这个问题,我的价值观也不是唯一的。我也找不到在PHPMyAdmin中编辑此问题的简便方法。这是我解决的方法:

  1. 我点击了需要更新的表格

  2. 我导出了表格,将其更改为CSV导出,然后进行了编辑     手动更新非唯一值。

  3. 确保我仍在我导出的表中(因为我     想保持标题不变),我导入了新保存的CSV

希望以后可以节省一些时间的人。

相关问题