简介:约束是用于确保数据库表中数据的完整性和准确性的规则。本文将详细介绍MySQL中的约束,包括主键约束、外键约束、唯一约束、非空约束和检查约束等,以及如何使用它们来维护数据完整性。
在MySQL中,约束是用于限制表中的数据的有效性或完整性的规则。它们确保数据的准确性和可靠性,防止无效或意外数据的插入、更新或删除。约束可以分为以下几种类型:
CREATE TABLE Persons (PersonID int NOT NULL,LastName varchar(255) NOT NULL,FirstName varchar(255),Age int,PRIMARY KEY (PersonID));
CREATE TABLE Orders (OrderID int NOT NULL,CustomerID int,PRIMARY KEY (OrderID),FOREIGN KEY (CustomerID) REFERENCES Customers(CustomerID));
CREATE TABLE Persons (PersonID int NOT NULL,LastName varchar(255) NOT NULL,FirstName varchar(255),Age int,UNIQUE (LastName, FirstName));
CREATE TABLE Persons (PersonID int NOT NULL,LastName varchar(255) NOT NULL,FirstName varchar(255),Age int,UNIQUE (LastName, FirstName),CONSTRAINT NN_Person_Age CHECK (Age IS NOT NULL));
CREATE TABLE Persons (PersonID int NOT NULL,LastName varchar(255) NOT NULL,FirstName varchar(255),Age int,UNIQUE (LastName, FirstName),CONSTRAINT CK_Age CHECK (Age > 0 AND Age < 150));