约束
MySQL约束是一种强制性的规则,它用于维护数据库的完整性 。这些约束保证了数据的准确性、一致性和可靠性。常用的几种约束及其作用如下
1.主键约束(PRIMARY KEY)
主键约束用于标识表中的每一行记录。每个表都只能有一个主键,且主键的值必须是唯一的,且不能为空。当你在创建表时,你可以通过PRIMARY KEY关键字来声明一个列作为主键。
例如:
1 | CREATA TABLE users( |
在这个例子中,id列被设置为PRIMARY KEY,这意味着它是主键,其值必须是唯一的,且不能为空。
2.非空主键(NOT NULL)
非空约束确保了列中的每个值都不能为空。当你在创建表时,你可以通过NOT NULL关键字来声明一个列作为非空列。
例如:
1 | CREATE TABLE users( |
在这个例子中,username列被设置为NOT NULL,这意味着它的值不能为空。
3.唯一约束(UNIQUE)
唯一约束确保了一个列或列组合中的每个值都是唯一的。这意味着在一个表中,这个列或列组合的值不能重复。当你在创建表时,你可以通过UNIQUE关键字来声明一个列或列组合作为唯一列。
例如:
1 | CREATE TABLE users( |
在这个例子中,username列被设置为UNIQUE,这意味着它在表中必须是唯一的。而email列没有被设置为UNIQUE,所以它的值可以在表中重复。
4.外键约束(FOREIGN KEY)
外键约束用于维持两个表之间的关联性。当你在创建表时,你可以通过FOREIGN KEY关键字来声明一个列作为外键。
例如:
1 | CREATE TABLE orders( |
在这个例子中,product_id列被设置为FOREIGN KEY,这意味着它的值必须存在于products表的product_id列中。如果product_id列的某个值不存在于products表的product_id列中用,那么MySQL将会抛出一个错误。