我是靠谱客的博主 留胡子星星,最近开发中收集的这篇文章主要介绍保证数据的完整性,觉得挺不错的,现在分享给大家,希望可以做个参考。

概述

1.数据的完整性:数据的可靠性+准确性

2.数据完整性的实施方法:

                实体完整性:一个表中的一行,如果与它所代表的实体完全一致,就说该表具有实体完整性

                          (保证一行数据是有效的)

                            实体完整性将行定义为特定表的唯一实体,实体完整性强制表的标识列或主键的完整性,可通过在表中设置主键约束、唯一约束或标识列属性来实现

                             (保证每行所代表的实体能相互区别)

                域完整性:给定列的输入有效性(保证一列的数据是有效的)  

                          强制域有效性的方法:限制类型(通过数据类型)、格式(通过检查约束)或可能值的范围(通过外键约束、检查约束、默认值定义、非空约束)。

                引用完整性:必须在有关联关系的表中,确保一个表的外键的值来源于另一个表中额主键值(保证引用的编号是有效的)

                用户自定义完整性:保证自定义规则。可通过触发器、储存过程等实现。

3.外键与外键约束:

    外键:从表的某列与主表的某列存在依附关系

   外键约束:外键关联主键上强制加上一个约束

4.主键约束:主键是表中的一到多个列,主键列不能为空,也不能重复

   唯一约束:可以为空

5.实体完整性保证表中的每一行都是不同的实体,域完整性保证输入到每一列数据的正确性和准确性,引用完整性保证表间关系的正确性和准确性

7.CREATE DATABASE day03_32;
USE day03_32;


CREATE TABLE t_student(
s_id INT,
s_name VARCHAR(20),
s_age INT,
s_phone BIGINT UNIQUE,
PRIMARY KEY (s_id)
);
INSERT INTO t_student VALUES(1,'xu',20,13890023451);
INSERT INTO t_student VALUES(2,'wang',20,13890023459);
INSERT INTO t_student VALUES(3,'wang',20,13890023450);
SELECT * FROM t_student;


/*域完整性*/
DROP TABLE t_student;
CREATE TABLE t_student(
s_id INT NOT NULL,
s_name VARCHAR(20) NOT NULL,
s_age INT NOT NULL UNIQUE,
s_phone BIGINT DEFAULT 132,
PRIMARY KEY (s_id)
);


INSERT t_student(s_id,s_name,s_phone)VALUES(3,NULL,123);
INSERT t_student(s_id,s_name,s_age)
VALUES(4,'wang',18);


INSERT t_student(s_id,s_name,s_age,s_phone)
VALUES(5,'wang',18,NULL);


/*外键*/
SELECT * FROM t_student;
CREATE TABLE t_student(
s_id INT NOT NULL,
s_name VARCHAR(20) NOT NULL,
s_age INT NOT NULL UNIQUE,
s_phone BIGINT DEFAULT 132,
s_t_id INT,
PRIMARY KEY (s_id),
CONSTRAINT teaKey FOREIGN KEY (s_t_id) REFERENCES t_tea(t_id)
);


CREATE TABLE t_tea(
t_id INT PRIMARY KEY,
t_name VARCHAR(20),
t_age INT
);


DROP TABLE t_student;

最后

以上就是留胡子星星为你收集整理的保证数据的完整性的全部内容,希望文章能够帮你解决保证数据的完整性所遇到的程序开发问题。

如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。

本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
点赞(31)

评论列表共有 0 条评论

立即
投稿
返回
顶部