第三章:保证数据完整性

来源:互联网 发布:java邮件代发 编辑:程序博客网 时间:2024/05/24 04:28

                                 第三章:保证数据完整性


数据完整性的含义:保证数据完整。

数据完整性的概念:可靠性+准确性=数据完整性。

为什么要保证数据完整性?

防止垃圾数据,提高执行效率。

.>数据完整性的分类

—1.实体完整性
.保证一行数据是有效的
—2.域完整性
.保证一列数据是有效的
—3.引用完整性
.保证引用的编号是有效的
—4.自定义定义完整性
.保证自定义完整性

.为什么要有域完整性?

—为了保证列的数据的有效性

什么叫域完整性?

—指给定列输入有效性

实现方法:

—非空约束:Not Null ;

—默认约束:DEFAULT ;

—检查约束:check(sql不支持);

注:主键约束默认为非空!

为什么要引用数据完整性?

—列如:在录入学生成绩时,所使用的学号必须是在学生表中作为主键存在的编号。

什么叫引用数据完整性?

—参照完整性是指分布在两个表中的列所满足的具有主从性质的约束关系。

方法:—外键约束

设置主键约束:
—.主键:是表中的一到多个列,主键列不能为空,也不能重复。
主键约束:(Primary  Key Constraint)是应用于表的了的一个约束。
设置唯一约束:
唯一约束(Unique  Constraint)是指给定列的所有的值必须是唯一的。该列在表中每一行的值必须是唯一。表可以有多个唯一约束。
主键约束与唯一约束的区别
1.主键的列不能为空,也不能重复,而唯一约束可以为空;
2.主键在一个表中只能使用一次,而唯一约束可以使用多次。

外键与外键约束的区别:

外键:是表与表之间的联系。

外键约束:是指在外键关联主键上强制加上一个约束,如果违反约束,则不允许该条数据的修改。

使用外键约束(Foreign key)链接的两个列必须是相同的(或至少是相似的)数据类型。

语法:constraint 约束名 foreign key(当前的主键列名)

 references(指向)  表名(列名)

:必须是指向另一个表的主键。

——创建主键:

1).create table 表名(

列名 数据类型 primary key ,——直接添加

);

2).create table 表名(

列名 数据类型,

Constraint  约束名 Primary KEY(列名)

);

       3).create table 表名(

列名 数据类型  ,

);

       ALTER TABLE 表名 ADD primary key(列名);

——创建外键:

1).create table 表名(

列名 数据类型 ,

constraint  约束名  foreign key (当前的主键列名)

references 另一个表的表名(主键列名);

);

2).create table 表名(

列名 数据类型 ,

);

      ALTER TABLE 表名 ADD  

constraint  约束名  foreign key (当前的主键列名)

references 另一个表的表名(主键列名);

——删除外键:ALTER TABLE 表名  DROP foreign key 约束名

——修改列的约束(唯一约束)

1).ALTER TABLE 表名 change 列名(要改的) 列名(可是改成另一个或在原来的列名上)数据类型(改)。

2).ALTER TABLE 表名  ADD Unique (列名)。

3).ALTER TABLE 表名 

 MODIEY (列名)  not null Unique。


——《使用自动编号列》

关键字:auto_identity(是根据最大的编号值加1).

——修改自增:

语法:ALTER TABLE 表名AUTO_identity=1 (注:=1是指从1开始自增);


——查询表:select *from 表名; 






0 0
原创粉丝点击