mysql - 如何协调主键、非空、唯一、自增和生成?

标签 mysql mysql-workbench

我是 MySql 新手,正在使用 Workbench。

我对复选框PKNNUQAIG<感到困惑.

主键不是意味着它必须不为空且唯一吗?那么为什么允许主键不必是唯一的呢?

自动增量不是意味着必须生成吗?窗口上半部分的复选框将 AIG 视为单选按钮,选中一个取消选中另一个。但是,窗口下半部分的“自动增量”和“生成的”复选框的行为有所不同,其中“自动增量”始终处于禁用状态。这些缩写词的意思和我想的一样吗?

如果我希望列包含自动生成的唯一 int 值(如 Microsoft Sql 中的 Identity 属性),我应该使用什么设置?

最佳答案

对于人工智能独特的值(value):

CREATE TABLE tbl (
id INT UNSIGNED NOT NULL AUTO_INCREMENT PRIMARY KEY
)

用于所有索引目的的主键与唯一键相同。

关于mysql - 如何协调主键、非空、唯一、自增和生成?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/53587527/

相关文章:

mysql-workbench - 如何将空间数据导入 mysql 8 (Mysql WorkBench 8.0)

php - 从mysql表到多维数组

php - 将php数组插入mysql

mysql - SQL 子查询和表连接问题

mysql - 如何组契约(Contract)一个表中的两列并计算其唯一出现次数

mysql - 如何使用 Navicat 或 MySQL Workbench 将 MySQL 与 Docker 连接?

mysql - 错误 1022 : Can't write; duplicate key in table 'tablesample'

mysql - 如何在 Workbench 中为 MySQL 表指定 DateTime()

javascript - 对 MySQL 运行数据库查询后无法看到结果

php - 在mysql表的列中按其位置(以逗号分隔)一次删除一个值