当前位置: 首页 > news >正文

南京佛搜做网站公司seochinaz查询

南京佛搜做网站公司,seochinaz查询,大淘客做网站,岳阳网站建设一站式服务一、概述 1.概念:约束是作用于表中字段上的规则,用于限制存储在表中的数据。 2.目的:保证数据库中数据的正确、有效性和完整性。 3.分类 约束描述关键字非空约束限制该字段的数据不能为nullnot null唯一约束保证该字段的所有数据都是唯一…

一、概述

1.概念:约束是作用于表中字段上的规则,用于限制存储在表中的数据。

2.目的:保证数据库中数据的正确、有效性和完整性。

3.分类

约束描述关键字
非空约束限制该字段的数据不能为nullnot null
唯一约束保证该字段的所有数据都是唯一、不重复的unique
主键约束主键是一行数据的唯一标识,要求非空且唯一primary key
默认约束保存数据时,如果未指定该字段的值,则采用默认值default
检查约束保证字段值满足某一个条件check
外键约束用来让两张表的数据之间建立连接,保证数据的一致性和完整性foreing key

注意:约束是作用于表中字段上的,可以在创建表 / 修改表的时候添加约束。 

二、约束演示

根据需求,来完成表结构的创建

字段名字段含义 字段类型约束条件约束条件
idID唯一标识int主键,并且自动增长primary key , auto_increment
name性别varchar(10)不为空,并且唯一not null , unique
age年龄int大于0,并且小于等于120check
status状态char(1)如果没有指定该值,默认为1default
gender性别char(1)

大家不妨先自己动手尝试尝试,我就先把答案放在下方啦! 

create table if not exists user(id int primary key auto_increment comment '主键',name varchar(10) not null unique comment '姓名',age int check(age>0 && age<120) comment '年龄',status char(1) default '1' comment '状态',gender char(1) comment '性别'
)comment '用户表';

建立的表结构截图如下:

三、外键约束 

1.概念:外键用来让两张表的数据之间建立连接,从而保证数据的一致性和完整性。

注意:目前上述的两张表,在数据库层面,并未建立外键关联,所以是无法保证数据的一致性和完整性的。

在开始之前,我先来进行表结构的创建,代码如下,大家可以自行参考

create table if not exists dept(id int auto_increment comment 'ID' primary key,name varchar(50) not null comment '部门名称'
)comment '部门表';
insert into dept(name) values('研发部'),('市场部'),('财务部'),('销售部'),('总经办');
create table if not exists dept_id(id int auto_increment comment 'ID' primary key,name varchar(50) not null comment '姓名',age int comment '年龄',job char(10) comment '职位',salary int comment '薪资',entrydate date comment '入职时间',managerid int comment '直属领导ID',dept_id int comment '部门ID'
)comment '员工表';insert into emp(name,age,job,salary,entrydate,managerid,dept_id) values('金庸',66,'总裁','20000','2000-01-01',null,5),('张无忌',20,'项目经理','12500','2005-12-05',1,1),('杨逍',33,'开发','8400','2000-11-03',2,1),('韦一笑',48,'开发','11000','2002-02-05',2,1),('常遇春',43,'开发','10500','2004-09-07',3,1);

创建好的表如下:

接下来,我们来建立外键关联,以此来保证数据的一致性和完整性。

2.外键约束

2.1添加外键

create table 表名(

          字段名 数据类型 ,

          ...

          [constraint] [外键名称] foreign key (外键字段名) references 主表(主表列名)

);

alter table 表名 add constraint 外键名称 foreign key (外键字段名) references  主表(主表列名);

alter table emp add constraint fk_emp_dept_id foreign key (dept_id) references dept(id);

大家看emp表前后的区别

2.2删除外键

alter table 表名 drop foreign key 外键名称 ; 

alter table emp drop foreign key fk_emp_dept_id;

2.3删除 / 更新行为

行为说明
no action当在父表中删除 / 更新对应记录时,首先检查记录是否有对应外键,如果有则不允许删除 / 更新。(与restrict一致)
restrict当在父表中删除 / 更新对应记录时,首先检查记录是否有对应外键,如果有则不允许删除 / 更新。(与no action一致)
cascade当在父表中删除 / 更新对应记录时,首先检查记录是否有对应外键,如果有,则也删除 / 更新外键在子表中的记录。
set null当在父表中删除 / 更新对应记录时,首先检查记录是否有对应外键,如果有,则设置子表中该外键值为 null (这就要求该外键允许取 null )。
set default父表有变更时,子表将外键列设置成一个默认的值。 

alter table 表名 add constraint 外键名称 foreign key (外键字段名) references  主表名(主表列名) on update cascade on delete cascade;

 -- cascade

alter table emp add constraint fk_emp_dept_id foreign key (dept_id) references dept(id) on update cascade on delete cascade;

 

-- set null

alter table emp add constraint fk_emp_dept_id foreign key (dept_id) references dept(id) on update set null on delete set null;

 本节课的内容到此结束啦,我们下期再见!

http://www.khdw.cn/news/55188.html

相关文章:

  • 考研培训百度seo怎么收费
  • 武汉市哪里做公司企业网站广州百度搜索优化
  • 阅读网站怎么做外贸互联网推广的
  • 怎么做提取微信62的网站广东短视频seo营销
  • 织梦网站首页自动更新做网站的流程与步骤
  • 网站域名有了 网站如何建设seo竞争对手分析
  • 在线营销型网站建设外贸网站seo
  • 博客网站wordpress站长之家域名信息查询
  • 网站里面的图片做桌面不清晰度长沙百度seo
  • 做网站要学的东西seo网络推广软件
  • 不会做网站国际机票搜索量大涨
  • 游戏开发 网站开发优化设计答案大全
  • 做旅游的网站的需求百度官方网页版
  • 网站评价及优化分析报告贵阳做网络推广的公司
  • 开源建站系统有哪些制作公司网站大概多少钱
  • 天津河西做网站公司网站建设开发价格
  • wordpress 侧 悬浮插件郑州seo方案
  • 怎么申请一个网站惠州seo推广公司
  • 欧派装修公司宁波优化网站排名软件
  • b2b还是自己做网站广告外链购买平台
  • 海南哪家公司做网站做的好网址收录网站
  • wordpress未收到数据库南宁seo服务优化
  • 黄冈网站建设推荐百度网页版 入口
  • 深圳哪个网站发布做网站微信广告投放收费标准
  • 东营做网站m0536广州知名网络推广公司
  • 云平台网站建设方案书谷歌搜索排名
  • 做网站可以申请个体户么免费seo教程分享
  • 郑州做网站价格开展网络营销的企业
  • 深圳制作网站制作公司活动营销推广方案
  • 赣榆网站制作大数据比较好的培训机构