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

网站用视频做背景音乐哈尔滨最新疫情

网站用视频做背景音乐,哈尔滨最新疫情,wordpress友情链接排序,新媒体营销岗位招聘文章目录 约束(constraint)列级约束和表级约束给约束起名字(constraint)非空约束(no null)检查约束(check)唯一性约束 (unique)主键约束 (primary key)主键分类单一主键复合主键主键自增 (auto_increment) 外键约束外什…

文章目录

  • 约束(constraint)
    • 列级约束和表级约束
    • 给约束起名字(constraint)
    • 非空约束(no null)
    • 检查约束(check)
    • 唯一性约束 (unique)
    • 主键约束 (primary key)
      • 主键分类
      • 单一主键
      • 复合主键
      • 主键自增 (auto_increment)
    • 外键约束
      • 外什么用外键
      • 级联删除
      • 级联更新
      • 级联置空
      • 注意点

约束(constraint)

列级约束和表级约束

列级约束

直接在字段后面是列级约束
create table test (id int 约束1 约束2.....,name varchar(20) 约束1 约束2....
);

表级约束

定义完,再约束是表记约束。比如联合不能重复的时候就要用到
create table test (id int,name varchar(20),//这里表示 id 和 name联合不能重复 unique(id, name)
);


给约束起名字(constraint)

create table test (id int,name varchar(20),//这里给 unique 起别名,方便删除 constraint 别名 unique(id, name)
);

约束的描述信息,在information_schema 库中的 table_constraints表中



非空约束(no null)

create table test (id int.name varchar(255) not nul;
);
//表示 name 字段不能为空


检查约束(check)

create table test (id int,name varchar(255),age int check(age > 18)
);
//表示 age 必须 大于 18


唯一性约束 (unique)

create table test(no int,name varchar(100),email varchar(100), unique(name, email)
);
//把 email 和 name 设置成联合唯一性的,不能插入重复的,除了NULL


主键约束 (primary key)

  • 主键约束的字段不能为NULL,并且不能重复。

  • 任何一张表都应该有主键,没有主键的表可以视为无效表。

  • 主键值是这行记录的唯一标识。在数据库表中即使两条数据一模一样,但由于主键值不同,我们也会认为是两条完全的不同的数据。


主键分类

  1. 根据字段数量分类:
    1. 单一主键(1个字段作为主键)【建议】
    2. 复合主键(2个或2个以上的字段作为主键)
  2. 根据业务分类:
    1. 自然主键(主键和任何业务都无关,只是一个单纯的自然数据)【建议】
    2. 业务主键(主键和业务挂钩,例如:银行卡账号作为主键)

单一主键

create table test (uid int primary key,nno varchar(100) unique,name varchar(100) not null
)
//把 uid 设置为主键

复合主键

create table test (uid int,nno varchar(100) unique,name varchar(100) not null,primary key(uid, nno)
)
//把 uid 和 nno 设置成联合主键

不建议使用


主键自增 (auto_increment)

主键自增:既然主键值是一个自然的数字,mysql为主键值提供了一种自增机制,不需要我们程序员维护,mysql自动维护该字段create table test (no int primary key auto_increment,name varchar(20)
);



外键约束

create table t_school( sno int primary key, sname varchar(255) 
); create table t_student( no int primary key, name varchar(255), age int, sno int, //constraint 是起别名,foreign key...references 是外键constraint t_school_sno_fk foreign key(sno) references t_school(sno) 
);
//外键不一定是主键,也可以是父表中具有唯一性的字段


外什么用外键

在这里插入图片描述
图片来源:动力节点

这种情况比较浪费空间直接两张表,然后设置外键


表一

在这里插入图片描述
图片来源:动力节点


表二

外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传
图片来源:动力节点



级联删除

创建子表时,外键可以添加:on delete cascade,这样在删除父表数据时,子表会级联删除。谨慎使用。create table t_student( no int primary key, name varchar(255), age int, sno int, constraint t_school_sno_fk foreign key(sno) references t_school(sno) on delete cascade 
);
###删除约束
alert table t_student drop foreign key t_student_sno_fk;
###添加约束
alert table t_student add constraint t_student_sno_fk foreign key(sno) references t_school(sno) on delete cascade; 


级联更新

创建子表时,外键可以添加:on update cascade ,这样在修改父表数据时,子表会级联修改,谨慎使用。create table t_student( no int primary key, name varchar(255), age int, sno int, constraint t_school_sno_fk foreign key(sno) references t_school(sno) on update cascade 
);


级联置空

创建子表时,外键可以添加:on delete set null,父数据设置成 null ,子表会级联设置为 null ,谨慎使用。create table t_student( no int primary key, name varchar(255), age int, sno int, constraint t_school_sno_fk foreign key(sno) references t_school(sno) on delete set null 
);


注意点

  • 添加了外键约束的字段中的数据必须来自其他字段,不能随便填。

  • 假设给a字段添加了外键约束,要求a字段中的数据必须来自b字段,b字段不一定是主键,但至少要有唯一性。

  • 外键约束可以给单个字段添加,叫做单一外键。也可以给多个字段联合添加,叫做复合外键。复合外键很少用。

a 表 如果引用 b 表 中的数据,可以把 b表 叫做 父表 ,把 a 表 叫做 子表。

  1. 创建表时,先创建父表,再创建子表。
  2. 插入数据时,先插入父表,在插入子表。
  3. 删除数据时,先删除子表,再删除父表。
  4. 删除表时,先删除子表,再删除父表。

插入就先父,删除先子

http://www.zhongyajixie.com/news/45674.html

相关文章:

  • 网站上添加百度地图导航全自动引流推广软件app
  • 老榕树网站建设站长之家app
  • 网站标题怎么隔开百度一下百度一下
  • 如何做繁体字网站seo产品推广
  • 手机新闻网站模板厦门最好的seo公司
  • 机构单位网站建设方案百度老旧版本大全
  • 纯文字网站设计媒体资源
  • 蕲春网站建设seo的作用
  • 人民政府门户网站首页公众号免费推广平台
  • 一般政府网站用什么做合肥网站制作推广
  • 哪儿能做网站建设各种手艺培训班
  • 做出口的网站百度人工服务热线
  • 临沂手机网站竞价排名软件
  • python做流量网站产品免费推广网站有哪些
  • 网站开发项目挣钱吗排名优化网站seo排名
  • 展厅设计ppt汇报靖江seo要多少钱
  • 管理系统网站模板上google必须翻墙吗
  • iis默认网站怎么设置宣传方式有哪些
  • 长沙做网站哪家好注册百度账号免费
  • 做彩票网站需要什么西安网站seo诊断
  • 建设项目验收公示网站网络营销推广方法
  • 湖北移动网站建设火爆产品的推广文案
  • 程序员 给老婆做网站如何给公司网站做推广
  • 网站建设合并但与那个看片子用什么app免费苹果手机
  • 网站开发报价单.doc中国制造网网站类型
  • 广西seo优化seo都用在哪些网站
  • 宁波海曙网站开发公司市场调研报告3000字范文
  • 橙子建站怎么做落地页做推广网络
  • 武汉品牌网站建设公司哪家好域名搜索引擎入口
  • 手机网站建设联系方式seo课程培训机构