数据完整性和约束(操作)

本文介绍了数据完整性的概念,包括实体完整性、域完整性、自定义完整性和引用完整性,并详细阐述了主键约束、外键约束、自增约束、唯一约束、非空约束和默认约束等数据库约束的创建和删除操作,特别指出MySQL不支持检查约束。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1、数据完整性:是指数据的精确性和可靠性。(数据有效+数据类型准确)
2、完整性包含:

1.实体完整性

主键约束、唯一约束、外键约束

2.域(列)完整性

默认约束、唯一约束、非空约束、触发器

3.自定义完整性

触发器、存储过程

4.引用完整性

外键约束

3、约束的常用操作
(1) 主键约束
  1. 在表定义的时候添加主键
CREATE TABLE <table_name> (
<columu_name> type PRIMARY KEY
 );
 --列名 定义 PRIMARY KEY

2.在表以创建时添加主键

ALTER TABLE <table_name> ADD PRIMARY KEY (column_name);
-- alter table 表名 add primary key (列名)

删除主键

ALTER TABLE <table_name> DROP PRIMARY KEY
(2) 外键约束

1.在表定义的时候

CREATE TABLE <table_name> (
  <column_name> int ,
  FOREIGN KEY (column_name) REFERENCES old_table_name(old_column)
);

2.在表已创建时添加外键

ALTER TABLE <table_name> ADD  
FOREIGN KEY (column) REFERENCES old_table_name(old_column);
-- alter table 表名 add foreign key (列名) peferences 父表名(列名)

删除外键

ALTER TABLE <table_name> DROP FOREIGN KEY <columu_name>
(3) 自增长约束
CREATE TABLE <table_name>(
<columu_name> INT AUTO_INCREMENT PRIMARY KEY
);
-- 设定为自增的列必须设置为主键,并且一张表里只能有一个自增列
-- 字段和主键同时定义并设定自增长
(4) 唯一约束
CREATE TABLE <table_name>(
vip VARCHAR(50) UNIQUE
);
-- 定义vip字段
-- UNIQUE和主键都能唯一标识数据库表中的每条记录
-- 但是每个表只能有一个主键,UNIQUE可以有多个
(5) 非空约束
CREATE TABLE <table_name>(
name VARCHAR(50) NOT NULL
);
-- 定义name字段非空
(6) 默认约束
CREATE TABLE <table_name>(
tel VARCHAR(50) DEFAULT "默认内容"
);
-- 定义tel字段默认值
(7) 检查约束(mysql不支持)
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值