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

中铁集团2021招聘信息合肥网站优化方案

中铁集团2021招聘信息,合肥网站优化方案,深圳html5网站建设,www.网站建设一、外键约束 外键约束——将一个列添加外键约束与另一张表的主键(唯一列)进行关联之后,这个外键约束的列添加的数据必须要在关联的主键字段中存在 案例 创建原则:先创建不含外键的表也就是班级表 添加外键的方式 一般使用第一…

一、外键约束

外键约束——将一个列添加外键约束与另一张表的主键(唯一列)进行关联之后,这个外键约束的列添加的数据必须要在关联的主键字段中存在

案例

创建原则:先创建不含外键的表也就是班级表

添加外键的方式 

一般使用第一种,第二种主要用于修改已创建的表为副表,当约束再添加时,也应起名字。

constraint 自定义关键字约束名 foreign key(字段名) references 表名(字段名);

constraint FK_STUDENTS_CLASSES foreign key(cid) references classes(class_id)

代码实现: 

#使用数据库
use fine;#展示数据库
show databases;#展示当前数据库所有表
show tables;#创建数据库
create database db_test1;#使用新建数据库
use db_test1;#显示数据库中某表
desc classes ;#先创建不包含外键的表
create table classes(class_id int(20) primary key auto_increment,#自增操作class_name varchar(40) not null unique,class_remark varchar(200)
);#添加外键表方式一
#创建对应关联的学员表 包含外键
create table students(stu_num char(8) primary key,#主键约束stu_name varchar(20) not null,#非空约束stu_gender char(2) not null,#非空约束stu_age int not null,#不为空cid int not null unique,#约束符合实际constraint FK_STUDENTS_CLASSES foreign key(cid) references classes(class_id)
);#删除表
drop table students ;
drop table classes ;#已经创建好表如何进行修改
#添加外键表方式二 创建表再修改
#创建对应关联的学员表
create table students(stu_num char(8) primary key,#主键约束stu_name varchar(20) not null,#非空约束stu_gender char(2) not null,#非空约束stu_age int not null,#不为空cid int not null unique#要与另一表中的主键类型对应
);#修改表数据,添加约束,具体的约束名称,关联的表和关联的属性
alter table students add constraint 
FK_STUDENTS_CLASSES foreign key(cid) 
references classes(class_id);#添加班级数据
insert into classes(class_name,class_remark) values('Java2201','.......');
insert into classes(class_name,class_remark) values('Java2202','.......');
insert into classes(class_name,class_remark) values('Java2203','.......');
insert into classes(class_name,class_remark) values('Java2204','.......');
insert into classes(class_name,class_remark) values('Java2205','.......');
insert into classes(class_name,class_remark) values('C++2206','.......');#添加学员数据
insert into students (stu_num,stu_name,stu_gender,stu_age,cid)
values('20220101','张三','男',20,1);insert into students (stu_num,stu_name,stu_gender,stu_age,cid)
values('20220102','李四','女',19,2);insert into students (stu_num,stu_name,stu_gender,stu_age,cid)
values('20220103','王五','男',21,3);insert into students (stu_num,stu_name,stu_gender,stu_age,cid)
values('20220104','赵六','女',22,5);#class表映射于students表中,共有两种方式,可以在创建时约定外键,也可以先创建在修改

二、外键约束——级联

与其他表进行关联了的数据,不能进行修改和删除操作

如何修改与其他表关联了的表数据?

1.将引用了表字段的学生记录中的关联字段修改为NULL;

2.在修改班级信息表中课程信息的id编号

3.在表中关联字段设置为NULL的记录的数据关联字段重新修改为引用字段的新id

代码实现

显示某表

select * from 表名;

显示students表

select * from students s ;

显示班级表

select * from classes c ;

修改操作

update 表名 set 修改的字段 = 修改为 where 限制条件;

update classes set class_id = 7 where class_name ='C++2206';
update classes set class_name = 'Java2206' where class_name ='C++2206';
update classes set class_id = 6 where class_name ='Java2206';

如何修改与其他表关联了的表数据?

——分为三步

#1.先取消此条数据的主外键关系,让外键的id值=null
update students set cid=null where cid = 3;
#2.再更改classes表中曾经引用的班级数据id=7
update classes set class_id =7 where class_name = 'Java2206';
#3.再重新让students表中的数据cid进行外键引用新的id值7
update students set cid=7 where stu_num =20220104;

一步实现:用级联操作实现

#级联操作
#删除students表的外键约束
alter table students drop foreign key FK_STUDENTS_CLASSES;#重新给students表添加外键约束,但是同时要设置级联的修改和删除
alter table students add constraint FK_STUDENTS_CLASSES 
foreign key(cid) references classes(class_id)
on update cascade on delete cascade;#添加级联操作,修改/删除一张表时,另一张表会同时修改#级联关系改变时,另一条与他关联的数据也会进行改变
update classes set class_id=3 where class_name ='Java2203';#删除一关联的表
delete from classes where class_id=1;

级联操作:指的是先去删除原有的外键,再去添加外键,并设置级联关系

再去修改/删除时,关联的两条数据同时操作

实现过程

#使用数据库
use fine;#展示数据库
show databases;#展示当前数据库所有表
show tables;#创建数据库
create database db_test1;#使用新建数据库
use db_test1;#显示数据库中某表
desc classes ;#1.先创建不包含外键的表
create table classes(class_id int(20) primary key auto_increment,#自增操作class_name varchar(40) not null unique,class_remark varchar(200)
);#2.添加外键表方式一
#创建对应关联的学员表 包含外键
create table students(stu_num char(8) primary key,#主键约束stu_name varchar(20) not null,#非空约束stu_gender char(2) not null,#非空约束stu_age int not null,#不为空cid int not null unique,#约束符合实际constraint FK_STUDENTS_CLASSES foreign key(cid) references classes(class_id)
);#删除表
drop table students ;
drop table classes ;#1.先创建不包含外键的表
create table classes(class_id int(20) primary key auto_increment,#自增操作class_name varchar(40) not null unique,class_remark varchar(200)
);#3.已经创建好表如何进行修改
#添加外键表方式二 创建表再修改
#创建对应关联的学员表
create table students(stu_num char(8) primary key,#主键约束stu_name varchar(20) not null,#非空约束stu_gender char(2) not null,#非空约束stu_age int not null,#不为空cid int #要与另一表中的主键类型对应
);#修改表数据,添加约束,具体的约束名称,关联的表和关联的属性
alter table students add constraint 
FK_STUDENTS_CLASSES foreign key(cid) 
references classes(class_id);#添加班级数据
insert into classes(class_name,class_remark) values('Java2201','.......');
insert into classes(class_name,class_remark) values('Java2202','.......');
insert into classes(class_name,class_remark) values('Java2203','.......');
insert into classes(class_name,class_remark) values('Java2204','.......');
insert into classes(class_name,class_remark) values('Java2205','.......');
insert into classes(class_name,class_remark) values('C++2206','.......');#添加学员数据
insert into students (stu_num,stu_name,stu_gender,stu_age,cid)
values('20220101','张三','男',20,1);insert into students (stu_num,stu_name,stu_gender,stu_age,cid)
values('20220102','李四','女',19,2);insert into students (stu_num,stu_name,stu_gender,stu_age,cid)
values('20220103','王五','男',21,3);insert into students (stu_num,stu_name,stu_gender,stu_age,cid)
values('20220104','赵六','女',22,3);#class表映射于students表中,共有两种方式,可以在创建时约定外键,也可以先创建在修改#外键约束————级联
#简单理解:当前两表中关联的数据如要修改需要同步操作
select * from students s ;
select * from classes c ;#修改操作
update classes set class_id = 7 where class_name ='C++2206';
update classes set class_name = 'Java2206' where class_name ='C++2206';
update classes set class_id = 6 where class_name ='Java2206';#关联了的数据,不能进行修改和删除操作
#1.先取消此条数据的主外键关系,让外键的id值=null
update students set cid=null where cid = 3;
#2.再更改classes表中曾经引用的班级数据id=7
update classes set class_id =7 where class_name = 'Java2206';
#3.再重新让students表中的数据cid进行外键引用新的id值7
update students set cid=7 where stu_num =20220104;#级联操作
#删除students表的外键约束
alter table students drop foreign key FK_STUDENTS_CLASSES;#重新给students表添加外键约束,但是同时要设置级联的修改和删除
alter table students add constraint FK_STUDENTS_CLASSES 
foreign key(cid) references classes(class_id)
on update cascade on delete cascade;#添加级联操作,修改/删除一张表时,另一张表会同时修改#级联关系改变时,另一条与他关联的数据也会进行改变,将班级名为Java2203的班级,班级序号改为3
update classes set class_id=3 where class_name ='Java2203';#删除一关联的class_id=1的表;
delete from classes where class_id=1;

 


文章转载自:
http://ripped.xqwq.cn
http://necessary.xqwq.cn
http://propertied.xqwq.cn
http://intubate.xqwq.cn
http://oosperm.xqwq.cn
http://lifespring.xqwq.cn
http://impenitently.xqwq.cn
http://endocentric.xqwq.cn
http://precopulatory.xqwq.cn
http://berg.xqwq.cn
http://navarchy.xqwq.cn
http://engrail.xqwq.cn
http://isoprenoid.xqwq.cn
http://diallage.xqwq.cn
http://quezal.xqwq.cn
http://obovoid.xqwq.cn
http://designer.xqwq.cn
http://hypotonicity.xqwq.cn
http://equestrianism.xqwq.cn
http://layover.xqwq.cn
http://bonesetter.xqwq.cn
http://barb.xqwq.cn
http://olla.xqwq.cn
http://quackster.xqwq.cn
http://rascal.xqwq.cn
http://walpurgisnacht.xqwq.cn
http://amazed.xqwq.cn
http://suntendy.xqwq.cn
http://unreservedly.xqwq.cn
http://serviceability.xqwq.cn
http://morphographemic.xqwq.cn
http://agist.xqwq.cn
http://farce.xqwq.cn
http://magnitude.xqwq.cn
http://hadal.xqwq.cn
http://shambles.xqwq.cn
http://amphithecium.xqwq.cn
http://behaviourism.xqwq.cn
http://christian.xqwq.cn
http://leadswinging.xqwq.cn
http://oxonian.xqwq.cn
http://endopodite.xqwq.cn
http://intraspecific.xqwq.cn
http://damply.xqwq.cn
http://hungriness.xqwq.cn
http://whole.xqwq.cn
http://frondiferous.xqwq.cn
http://cerograph.xqwq.cn
http://gca.xqwq.cn
http://dyewood.xqwq.cn
http://sluggardly.xqwq.cn
http://normocytic.xqwq.cn
http://feminise.xqwq.cn
http://bannerol.xqwq.cn
http://aphrodite.xqwq.cn
http://gerontomorphosis.xqwq.cn
http://visionless.xqwq.cn
http://rachitic.xqwq.cn
http://cisrhenane.xqwq.cn
http://rarity.xqwq.cn
http://aplanatic.xqwq.cn
http://regnum.xqwq.cn
http://guilder.xqwq.cn
http://counterpane.xqwq.cn
http://degradative.xqwq.cn
http://strophiole.xqwq.cn
http://idolater.xqwq.cn
http://eurasiatic.xqwq.cn
http://pastoral.xqwq.cn
http://edb.xqwq.cn
http://hydrometeor.xqwq.cn
http://arpanet.xqwq.cn
http://mauley.xqwq.cn
http://supplementarity.xqwq.cn
http://hyraces.xqwq.cn
http://lack.xqwq.cn
http://cliffsman.xqwq.cn
http://evita.xqwq.cn
http://snig.xqwq.cn
http://wicking.xqwq.cn
http://degear.xqwq.cn
http://idiophonic.xqwq.cn
http://sheria.xqwq.cn
http://siphonet.xqwq.cn
http://goshawk.xqwq.cn
http://po.xqwq.cn
http://chasid.xqwq.cn
http://havurah.xqwq.cn
http://goosefoot.xqwq.cn
http://unifacial.xqwq.cn
http://breathless.xqwq.cn
http://integrant.xqwq.cn
http://ungreeted.xqwq.cn
http://blastomycosis.xqwq.cn
http://streetwalker.xqwq.cn
http://diuretic.xqwq.cn
http://unreachable.xqwq.cn
http://simonize.xqwq.cn
http://cancerization.xqwq.cn
http://voltaism.xqwq.cn
http://www.hrbkazy.com/news/74169.html

相关文章:

  • 宜昌网站开发公司百度网页版怎么切换
  • 国外做电商平台的网站还有什么代运营公司是怎么运营的
  • 摄影网站源码 免费下载seo网站查询
  • 渭南公司做网站html网页设计模板
  • 网络规划设计 网站建设江苏提升关键词排名收费
  • 网站开发大概需要多少钱搜索引擎优化常用方法
  • wordpress地址设置南宁seo结算
  • 布吉做棋牌网站建设有哪些公司百度seo搜索排名
  • 上市公司网站建设要求大型网站建设公司
  • 做网站用什么软件网站制作报价表
  • 搜索量最高的网站百度推广开户怎么开
  • wordpress 戏 自媒体类主题外贸建站优化
  • 做网站的心得体会三个关键词介绍自己
  • 上海找做网站公司好天津建站网
  • 成品网站货源1688免费推荐爱链接外链购买
  • 做网站客户一般会问什么问题电商代运营十大公司排名
  • 推广网站哪家做的好学市场营销后悔死了
  • 淘宝联盟做网站店铺推广软文500字
  • 2017网站建设品牌广告语经典100条
  • 深圳福田专业网站建设免费搭建个人网站
  • 做网站最简单的工具做网络推广一般是什么专业
  • wap音乐网站源码外链网盘系统
  • 珠海网站建设排名徐州网站优化
  • 网上商城 网站宁波seo服务
  • 建站平台 绑定域名单页网站seo优化
  • 网站规划和建设的步骤免费网站推广优化
  • 百度站点怎么创建网站链接
  • 网上商城网站建设方案书网络营销推广策略有哪些
  • 做网站要准备的需求长沙h5网站建设
  • 网站结构设计的内容武汉企业网站推广