在SQL中,MUL
、PRI
和UNI
是用于描述表中列的约束和索引类型的标记,尤其在创建表时通过SHOW CREATE TABLE
命令查看表结构时,你会看到这些标记。下面是它们的含义对比:
PRI
和UNI
都保证了列的唯一性,但PRI
还保证了非NULL性,而UNI
允许NULL值。PRI
通常是聚集索引(在InnoDB中),而UNI
可以是聚集或非聚集索引,具体取决于数据库的实现。PRI
用于定义主键,UNI
用于定义唯一约束,而MUL
用于定义非唯一索引,通常与外键相关。假设有一个名为employees
的表,其结构如下:
CREATE TABLE employees (
id INT PRIMARY KEY,
email VARCHAR(255) UNIQUE,
department_id INT,
FOREIGN KEY (department_id) REFERENCES departments(id)
);
在这个例子中:
id
列是主键,所以它有PRI
标记。email
列有唯一约束,所以它有UNI
标记。department_id
列是外键,所以它有MUL
标记,并且可能在departments
表的id
列上有索引。总之,MUL
、PRI
和UNI
是SQL中用于描述列约束和索引类型的标记,它们在创建和维护数据库表结构时非常有用。
领取专属 10元无门槛券
手把手带您无忧上云