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

做网站模板的网页名称是m开头免费网站开发平台

做网站模板的网页名称是m开头,免费网站开发平台,wordpress 下载模板,武汉成交型网站文章目录 自增长唯一键外键 自增长 auto_increment:当对应的字段,不给值,会自动的被系统触发,系统会从当前字段中已经有的最大值1操作,得到一个新的不同的值。通常和主键搭配使用,作为逻辑主键。 create …

文章目录

  • 自增长
  • 唯一键
  • 外键

在这里插入图片描述

自增长

  1. auto_increment:当对应的字段,不给值,会自动的被系统触发,系统会从当前字段中已经有的最大值+1操作,得到一个新的不同的值。通常和主键搭配使用,作为逻辑主键
create table t1(
id int unsigned primary key auto_increment,
name varchar(20) not null
)auto_increment=500;
// 可以手动设置auto_increment的初始值
insert into t1 (name) values('张三');
insert into t1 (name) values('张三');
insert into t1 (name) values('张三');

在这里插入图片描述

2. 自增长,不用管,自己可以解决冲突的问题

在这里插入图片描述

3. 手动插入一个值,从这个值的后面开始自增,如果没有插入值,默认从1开始自增

在这里插入图片描述
为什么会插入我们给的值呢?因为手动修改了auto_increment的值
在这里插入图片描述
4. 查看最后一次自增长插入的值

select last_insert_id();

在这里插入图片描述

5. 自增长的特点:
<> 任何一个字段要做自增长,前提是本身是一个索引(key一栏有值)
<> 自增长字段必须是整数
<> 一张表最多只能有一个自增长

6. 索引的简单介绍:可以类比于一本书的目录,通过目录可以找到你需要内容的页码,增加了目录也相当于牺牲了空间换取了时间,达到高效查找的目的

唯一键

  1. 唯一键可以为空(NULL),但是主键不能为空(NULL)
create table stu(
id char(10) unique comment '这个是学生的主键',
name varchar(32) not null
);
insert into stu (id,name) values('123','张三');
insert into stu  (id,name) values(NULL,'李四'); 

在这里插入图片描述
2. 主键和唯一键并不冲突,你设置了主键,但是还需要另一个事物保证它也是唯一的

// 可以把电话号码设为唯一键
// qq和电话号码肯定是唯一的
create table student(
id char(20) primary key,
name varchar(32) not null,
telphone varchar(20) unique key,
qq varchar(20) unique key
);

在这里插入图片描述
3. 也可以将唯一键设置为不为空

alter table student modify telphone varchar(20) unique not null;
alter table student modify qq varchar(30) unique not null; 

在这里插入图片描述

4. 一张表中有往往有很多字段需要唯一性,数据不能重复,但是一张表中只能有一个主键:唯一键就可以解决表中有多个字段需要唯一性约束的问题。
5. 唯一键的本质和主键差不多,唯一键允许为空,而且可以多个为空,空字段不做唯一性比较。
6. 关于唯一键和主键的区别:
我们可以简单理解成,主键更多的是标识唯一性的。而唯一键更多的是保证在业务上,不要和别的信息出现重复
比如你的身份证号要设置为主键,但是每个人的学号也是不同的,也要保持唯一性

外键

  1. 外键:外键用于定义主表和从表之间的关系:外键约束主要定义在从表上,主表则必须是有主键约束或unique约束。当定义外键后,要求外键列数据必须在主表的主键列存在或为null。
    <> 从表和主表的关联关系
    <> 产生外键约束
// 先建学生表(从表)
create table student(
id int unsigned primary key auto_increment,
name varchar(30) not null,
telphone varchar(20) notnull,
class_id int
);// 再建班级表(主表)
create table class(
id int primary key,
name varchar(30) not null
);// id是自增长的
insert into student (name,telphone,class_id) values('张三','12345678910',1);
insert into student (name,telphone,class_id) values('李四','123456789',1);insert into class values(1,'通信101');
insert into class values(2,'通信102');

2. 虽然这个田七插入到了3号班级,但是不存在3号班级,这在逻辑上是不对的,又比如把一个班级删除,但是这个班级下还有学生,这也是不对的

在这里插入图片描述

3. 如何解决上述问题呢?
关联两张表需要关联关系和约束关系

在这里插入图片描述

create table if not exists student(
id int unsigned primary key ,
name varchar(30) not null,
telphone varchar(20) unique key,
class_id int,
foreign key(class_id) references class(id)
// 从表中的class_id和主表的id建立联系
);

在这里插入图片描述
4. class_id和id建立了约束,不能插入id中没有的班级值

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

http://www.dtcms.com/wzjs/27095.html

相关文章:

  • 枣庄网站设计微信营销神器
  • 网站建设 开发工具 python营销伎巧第一季
  • 网站图片链接是怎么做的百度账号管理
  • html5企业网站案例游戏推广合作
  • 网站开发人员薪资网站优化主要优化哪些地方
  • 北京 网站建设公司网站优化设计的基础是网站基本要素及每个细节的优化
  • 采集电影做的网站网推
  • 上海做网站 公司排名网站优化哪个公司好
  • 想学做网站学那个软件好win7优化软件
  • ftp网站建设百度爱采购优化排名软件
  • 举例描述该如何布局网站关键词重庆seo建站
  • 网站做定制还是固定模板企业网站建站模板
  • 这几年做哪个网站能致富猪肉价格最新消息
  • 网站 域名 空间 服务器2345浏览器网站进入
  • 网站建设嘉兴公司电话app拉新推广平台有哪些
  • 北京招聘网站排行百度搜索关键词技巧
  • 内蒙古建设厅官方网站seo优化软件
  • 免费申请网站首选百度seo和sem是什么意思
  • 企业网站seo诊断微信营销平台哪个好
  • 乐清北白象网络怎么装百度seo排名优化公司哪家好
  • 建设工程质量检测公司网站免费网页空间到哪申请
  • 网站建设费可以一次性冲费用吗一个产品的网络营销方案
  • 微网站制作方案国外搜索引擎排行榜
  • 怎么让做的网站赚钱吗seo引擎
  • 一那个网站可以做一建题江苏网站建站系统哪家好
  • 凡客网站做SEO能被收录吗友情链接是啥意思
  • 动态网站设计分析淘宝推广
  • 高端设计网站都有哪些百度关键词模拟点击软件
  • 2017年网站推广怎么做百度网站推广排名优化
  • 网站做全景图抖音搜索seo