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

请问做网站需要什么软件邹城建网站

请问做网站需要什么软件,邹城建网站,唐山百度做网站多少钱,wordpress没登录窗口一、什么是数据库约束 数据库约束是指对数据库中的数据所施加的规则或条件,用于确保数据的准确性和可靠性。 二、约束类型 约束可分为NOT NULL非空约束、DEFAULT默认约束、UNIQUE唯一约束、PRIMARY KEY主键约束、FOREIGN KEY外键约束、CHECK约束六种。每一种的作…

一、什么是数据库约束

数据库约束是指对数据库中的数据所施加的规则或条件,用于确保数据的准确性和可靠性。

二、约束类型

约束可分为NOT NULL非空约束、DEFAULT默认约束、UNIQUE唯一约束、PRIMARY KEY主键约束、FOREIGN KEY外键约束、CHECK约束六种。每一种的作用都各不相同。

三、NOT NULL(非空约束)

定义表时某列不允许为NULL时,可以添加非空约束。
比如创建一个员工表,员工名为NULL时,这条记录是不完整的:

create table workers(id bigint comment '员工编号',name varchar(20) comment '员工姓名'
);
insert into workers values (1,null);
select * from workers;

查询结果如下所示:


此时我们就需要约束员工姓名的列不能为NULL:

drop table if exists workers;
create table workers(id bigint comment '员工编号',name varchar(20) not null comment '员工姓名'
);

此时我们再插入先前的数据:

insert into workers values (1,null);

运行后我们发现它报错了:
在这里插入图片描述
此时我们再插入正常值,发现可以成功插入:
在这里插入图片描述
然后我们查看表结构发现结构如下所示:
在这里插入图片描述
此时Null列id为YES,name为NO,这表示id列的值可以为null,而name列的值不能为null。

四、DEFAULT(默认值约束)

DEFAULT约束用于在列中指定默认值,如果一个列中没有设置值,那么便会将默认值设置到该列

更改员工表,在员工表中新增年龄列

drop table if exists workers;
create table workers(id bigint comment '员工编号',name varchar(20) not null comment '员工姓名',age int comment '年龄'
);

插入一条数据,不指定年龄,此时年龄列的值为null

在这里插入图片描述

更改员工表,为年龄加入默认值约束20

drop table if exists workers;
create table workers(id bigint comment '员工编号',name varchar(20) not null comment '员工姓名',age int default 20 comment '年龄'
);

插入一条数据,不指定年龄时使用了默认值

在这里插入图片描述

查看表结构,年龄列默认值为20

在这里插入图片描述

五、UNIQUE(唯一约束)

指定了唯一约束的列,该列的值在所有记录中不能重复,例如员工的编号,学生的学号等等。

更改员工表,新增工号列

drop table if exists workers;
create table workers(id bigint comment '员工编号',name varchar(20) not null comment '员工姓名',age int default 20 comment '年龄',sno varchar(10) comment '工号'
);

不设置唯一约束时,工号可重复
在这里插入图片描述

更改员工表,为工号设置唯一约束

drop table if exists workers;
create table workers(id bigint comment '员工编号',name varchar(20) not null comment '员工姓名',age int default 20 comment '年龄',sno varchar(10) unique comment '工号'
);

插入重复的工号,发现报错,唯一约束生效

在这里插入图片描述

查看表结构,UNI表示唯一约束

在这里插入图片描述

六、PRIMARY KEY(主键约束)

(1)主键约束唯一标识数据库中的每条记录
(2)主键必须包含唯一的值,且该值不为NULL
(3)每个表只能有一个主键,主键可以由单个列或多个列组成
(4)建议为每个表都设置一个主键

更改员工表,为id列添加主键

drop table if exists workers;
create table workers(id bigint primary key comment '员工编号',name varchar(20) not null comment '员工姓名',age int default 20 comment '年龄',sno varchar(10) unique comment '工号'
);

注意:主键同时拥有非空约束和唯一约束的特性

查看表结构,PRI代表主键约束
在这里插入图片描述

可为主键设置自动增长

drop table if exists workers;
create table workers(id bigint primary key auto_increment comment '员工编号',name varchar(20) not null comment '员工姓名',age int default 20 comment '年龄',sno varchar(10) unique comment '工号'
);

插入数据时不指定主键列的值,其会自动生成
在这里插入图片描述

查看表结构,Extra列显示auto_increment
在这里插入图片描述

复合主键:以多个列共同组成的主键

(1)更改员工表,设置id和name为复合主键

drop table if exists workers;
create table workers(id bigint,name varchar(20),primary key(id,name)
);

(2)插入两条id不同,名字都为张三的数据
在这里插入图片描述
这里能够正常插入是因为主键由id和name共同组成,有一个不一样就行

七、FOREIGN KEY(外键约束)

(1)外键用于定义主表和从表之间的关系
(2)外键约束定义在从表的列上,主表关联的列必须是主键或唯一约束
(3)当定义外键后,要求从表中的外键列数据必须在主表的主键或唯一列存在或者为null

具体实例如下所示:
在这里插入图片描述

创建班级表,并插入数据

drop table if exists class;
create table class(id bigint primary key auto_increment,name varchar(10) not null
);
insert into class values(1,'数学1班'),(2,'数学2班'),(3,'物理1班'),(4,'化学2班');
select * from class;

在这里插入图片描述

创建学生表,加入外键约束

drop table if exists student;
create table student(id bigint primary key auto_increment,name varchar(10) not null,age int default 18,class_id bigint,foreign key (class_id) references class(id)
);

查看学生表结构,发现Key列的值为MUL,表示外键约束
在这里插入图片描述

正常插入数据
在这里插入图片描述

插入班级号为6的学生,由于主表中没有这个班级,插入失败
在这里插入图片描述

插入班级id为NULL的记录,可以成功,表示当前学生还未分配班级
在这里插入图片描述

删除主表某记录时,从表中不能有对该记录的引用
在这里插入图片描述

注意:删除主表时要先删除从表

八、CHECK约束

CHECK 约束可以应用于一个或多个列,用于限制列中可接受的数据值,从而确保数据的完整性和准确性

创建一个小说表,其中售价不得高于30,并插入一条数据售价大于30
在这里插入图片描述
我们发现它报错了,这就是check起了作用

本篇内容到这里就结束了,感谢各位看官观看,如果觉得本篇内容对你有用,可以一键三连支持一下哦


文章转载自:

http://FigyD1NM.bswhr.cn
http://pnXxsZrN.bswhr.cn
http://0HoGYU7I.bswhr.cn
http://7BvuJa2q.bswhr.cn
http://BHaJ7u4U.bswhr.cn
http://rtbm5LNZ.bswhr.cn
http://fssS5IcN.bswhr.cn
http://fPV7W6Cz.bswhr.cn
http://xsJBPfpj.bswhr.cn
http://BXjOhevi.bswhr.cn
http://jSH0D5mA.bswhr.cn
http://K18HQmOT.bswhr.cn
http://fM4yL98G.bswhr.cn
http://KytWelB7.bswhr.cn
http://b1nOn3YL.bswhr.cn
http://dOLRB7U3.bswhr.cn
http://p0T692eR.bswhr.cn
http://Tj9VFlxd.bswhr.cn
http://V3BGJiUk.bswhr.cn
http://6KEggLYD.bswhr.cn
http://dFQUS4bu.bswhr.cn
http://ENt87i0J.bswhr.cn
http://ud9YbVhC.bswhr.cn
http://0jLlFKa4.bswhr.cn
http://nraQVkYs.bswhr.cn
http://pVcj3Jyk.bswhr.cn
http://rGe3wDWQ.bswhr.cn
http://hhofpCRd.bswhr.cn
http://fn6KOqfm.bswhr.cn
http://bnw8ip6p.bswhr.cn
http://www.dtcms.com/wzjs/635630.html

相关文章:

  • 班级优化大师官方网站公司建个网站要多少钱
  • 做游戏网站教程企业营业执照
  • 合肥网站的建设记事本做的网站链接怎么装饰
  • .net网站制作综合实训报告网站建设常识网站建设技术知识大全
  • 安徽省建设工程信息网站6装宽带需要多少钱
  • 北京公司网站制作价格开一家网络公司需要什么条件
  • 番禺做网站600元吴江网络推广
  • 全球外贸网站制作教程软文写作的基本要求
  • 萍乡网站开发iosapp开发工具
  • 长沙哪里做网站好知末网官网
  • 外贸网站能用阿里云吗新乡网站seo
  • 北京做网站最好的公司做网站交互
  • 快速搭建网站服务器重庆娱乐场所最新通知
  • 第一次做网站选多大空间网站开发介绍ppt
  • 中堂镇做网站网络推广营销公司
  • 万户网络网站顾问网站备案号不存在
  • 网站开发团队人员网站架构怎么做
  • 怎样设置网站西安专业的网站设计费用
  • 有域名有服务器怎么建站网络优化工程师有多累
  • 网站开发需要考什么证wordpress project
  • 帝国cms7.0网站搬家换域名换空间等安装教程品牌建设对企业的作用
  • 能够做物理题的网站网站开发专业培训学校
  • 康保网站制作网站建设 pdf教程
  • 做视频特技的网站百度服务中心人工24小时电话
  • 网站建设运营费用包括哪些软件开发用什么软件
  • 帝国cms 网站地址设置网页设计师培训课程多少钱
  • 常州建设银行新北分行网站新网seo关键词优化教程
  • 做网站需要知道什么软件东莞网站建设手袋加工
  • 织梦手机网站怎么修改wordpress 板块
  • 企业门户网站建设管理制度比较好的网页网站设计