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

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不支持)

猜你喜欢

转载自blog.csdn.net/candy_27/article/details/81534972