MySQL表的增删查改——数据库约束
在MySQL中,数据库的完整性是通过包括以下内容来保证的:
- 实体完整性:指表中的行必须是唯一的。
- 域完整性:指列中的数据必须符合特定的数据类型和约束。
- 参照完整性:指表之间的数据必须有效,如外键必须与其它表中的主键或唯一键相对应。
- 用户定义的完整性:指应用程序要求的业务规则。
以下是如何在MySQL中使用数据库约束的例子:
-- 创建一个新表,包含主键和外键约束
CREATE TABLE Orders (
OrderID int NOT NULL,
OrderNumber int NOT NULL,
CustomerID int,
PRIMARY KEY (OrderID),
FOREIGN KEY (CustomerID) REFERENCES Customers(CustomerID)
);
-- 创建表后添加唯一约束
ALTER TABLE Customers
ADD UNIQUE (CustomerEmail);
-- 创建表时添加默认约束
CREATE TABLE Products (
ProductID int NOT NULL,
ProductName varchar(50) NOT NULL,
Price decimal(10, 2) DEFAULT 9.99
);
-- 删除约束
ALTER TABLE Orders
DROP FOREIGN KEY Orders_ibfk_1;
在这个例子中,我们创建了一个新的表Orders
,为OrderID
列添加了主键约束,并为CustomerID
列添加了外键约束,它引用了Customers
表的CustomerID
列。我们也演示了如何在表创建后添加唯一约束以及如何在创建表时添加默认约束。最后,我们演示了如何删除一个约束。
评论已关闭