Fork me on GitHub

数据完整性

  实体完整性

  实体: 表中一行(一行记录)代替一个实体

  实体完整性的作用: 标识每一行数据不重复。

  约束类型: 主键约束, 唯一约束,自动增长列。

                             主键约束: 标识该列唯一,非空。  

            注:  每个表中必须要有一个主键

            添加主键的三中方式:

              1.在创建表的过程中直接创建。   

1
2
3
4
CREATE TABLE student(
id int primary key,
name varchar(50)
);

              2.  在创建表中的特殊创建方式:  优点在于  可以联合创建主键

1
2
3
4
5
6
7
8
9
10
11
CREATE TABLE student(
id int,
name varchar(50),
primary key(id)
);
CREATE TABLE student(
classid int,
stuid int,
name varchar(50),
primary key(classid,stuid)
);

              3.在表创建完成之后再给列创建主键

1
alter  table  表名 add  primary key (列名);

  

  

        唯一约束;    标识该列的值不能重复 。

    

1
2
3
4
CREATE TABLE student(
Id int primary key,
Name varchar(50) unique
);

        自增长:  标识 该列的数据会自动增长。 不需要人为的给值。

1
2
3
4
5
6
7
8
sqlserver数据库 (identity)  oracle数据库( sequence)
 
给主键添加自动增长的数值,列只能是整数类型
CREATE TABLE student(
Id int primary key auto_increment,
Name varchar(50)
);
INSERT INTO student(name) values(‘tom’);

  

  域完整性

    作用: 限制单元格的数据正确,不对照此列的其他单元格比较

      域代表当前单元格;

      域完整性的约束: 数据类型    默认值约束(default)   非空约束(not null)  check约束(mysql不支持)

    默认值约束:

1
2
3
4
5
CREATE TABLE student(
Id int pirmary key,
Name varchar(50) not null,
Sex varchar(10) default ‘男’
);

insert into student1 values(1,'tom','');

insert into student1 values(2,'jerry',default);

      非空约束:not null

1
2
3
4
5
6
7
CREATE TABLE student(
Id int pirmary key,
Name varchar(50) not null,//该列表示为非空
Sex varchar(10)
);
 
INSERT INTO student values(1,’tom’,null);

  引用完整性(参照完整性)

    外键:foreign   key

      创建外键的方法

    ALTER TABLE 表名  ADD CONSTRAINT 主键名   FOREIGN KEY (列名)  REFERENCES 表名(列名);

   表与表之间的关系;

      一对一;

      一对多;

      多对多;

  

 

posted on   TopTime  阅读(198)  评论(0编辑  收藏  举报
编辑推荐:
· .NET制作智能桌面机器人:结合BotSharp智能体框架开发语音交互
· 软件产品开发中常见的10个问题及处理方法
· .NET 原生驾驭 AI 新基建实战系列:向量数据库的应用与畅想
· 从问题排查到源码分析:ActiveMQ消费端频繁日志刷屏的秘密
· 一次Java后端服务间歇性响应慢的问题排查记录
阅读排行:
· 互联网不景气了那就玩玩嵌入式吧,用纯.NET开发并制作一个智能桌面机器人(四):结合BotSharp
· 《HelloGitHub》第 108 期
· 一个基于 .NET 开源免费的异地组网和内网穿透工具
· MQ 如何保证数据一致性?
· Windows桌面应用自动更新解决方案SharpUpdater5发布
< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5

点击右上角即可分享
微信分享提示