列标志在MySQL Workbench中意味着什么?

Iva*_*van 166 mysql sql mysql-workbench

在MySQL Workbench表编辑器中,有7个列标志可用:PK,NN,UQ,BIN,UN,ZF,AI.

PK显然代表主键.别人怎么样?

Vas*_*kov 333

PK - 主键

NN - 不是空的

BIN - 二进制(将数据存储为二进制字符串.没有字符集,因此排序和比较基于值中字节的数值.)

UN - 无符号(仅限非负数.因此,如果范围为-500到500,而不是0 - 1000,则范围相同,但从0开始)

UQ - 创建/删除唯一键

ZF - 零填充(如果长度为5,如INT(5)则每个字段填充0到第5位.12 = 00012,400 = 00400等)

AI - 自动增量

G - 生成的列.即基于其他列的公式生成的值

  • @Ivan:一个唯一约束确保一个值只能存在于**列*中.任何添加重复的尝试都将导致唯一的数据约束错误.作为支持覆盖多个列的唯一约束 - 这称为复合. (11认同)
  • 你能解释一下UQ是如何运作的吗? (8认同)
  • 一些工具提示在这里真的很不错. (7认同)
  • "G"怎么样? (6认同)
  • @Ivan - 它是一种帮助索引值同时防止重复的方法.例如,用于唯一客户列表的电子邮件和SSN字段应该是唯一索引,因为您经常使用这些字段进行查找,并且不应重复这些字段.对于内部仅由数据库用于频繁查找的任意值(例如客户ID),您应该使用带有自动增量选项的主键. (4认同)
  • G =生成的列.即基于其他列的公式生成的值. (3认同)

mac*_*Jun 18

这是这些列标志的来源

http://dev.mysql.com/doc/workbench/en/wb-table-editor-columns-tab.html

  • 如果页面中的某些信息包含在答案中,而不仅仅是包含链接,那将会有所帮助。这样,即使链接(再次)出现故障,答案也是安全的。 (2认同)