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

南京网站制作有限公司重大军事新闻

南京网站制作有限公司,重大军事新闻,设计工作室网页设计,mysql数据做彩票网站一、约束的作用 就是自动对数据、表间关联关系的正确性校验,一般在列上加约束。 二、各种约束 1、非空约束 not null 限制数据值不能为 null,比如学生姓名: 2、唯一约束 unique 限制数据值唯一,比如 id: 但是 unique…

一、约束的作用

        就是自动对数据、表间关联关系的正确性校验,一般在列上加约束。

二、各种约束

1、非空约束 not null

        限制数据值不能为 null,比如学生姓名:

2、唯一约束 unique

        限制数据值唯一,比如 id:

        但是 unique 限制的 id 可以有重复的 null:

3、主键约束 primary key

        限制数据唯一且不为空,可以由一个或多个列组成,用于唯一标识数据行,建议每个表都有一个主键,但一个表最多只能有一个主键最多只能有一个 auto_increment 列,主键类型建议为 bigint。

        插入数据:

        当插入失败时(比如设置 id 为重复值),插入失败的那个自增值会失效(auto_imcrement 只会增加,不会减少):

        当预计插入数据的主键、唯一键会有重复时,可以用以下两种语法(先把 name 设置为 unique):

        语法1:主键、唯一键冲突,则更新数据;不冲突,则直接插入(恢复到原样再执行):

        语法2:主键、唯一键冲突,则删除数据,再添加;不冲突,则直接插入:

        在工作中是不建议替换旧记录的,应该先查询有没有冲突,没有就插入。有就做更新操作,要么把旧记录的 deleteState 设为 1,再添加新记录。

        修改 (id, name) 为一个主键:

        primary key 和 not null + unique 是不一样的。primary key 是表的属性,一个表只能有一个主键;而 not null + unique 是业务数据的要求,一个表中的很多数据都可以是 not null + unique 。

4、外键约束 foreign key

        外键约束定义了主表和从表之间的关系外键约束定义在从表中,从表引用的主表列必须是主键或唯一键。当从表中的外键约束列添加值时,只能从主表的引用列中的值选择,或者为 null

        语法:

        创建班级表和学生表:

drop table if exists class;
create table class (id bigint primary key auto_increment,name varchar(20) not null
);
insert into class (name) values ('java01'), ('java02'), ('java03'), ('C++01'), ('C++02');drop table if exists student;
create table student(id bigint PRIMARY KEY auto_increment,  name varchar(20) not null,age int DEFAULT 18,class_id bigint,foreign key (class_id) references class(id)  # 外键约束
);

        查看表结构:

        插入一个不存在的班级编号的学生信息:

        如果从表引用了主表中的列值,主表就不能随意删除该列值,或者删除主表。如果非要删除,从表必须删除引用的值,或者删除外键约束:

        外键约束影响数据库效率,数据量很大时,在 java 程序中处理关联关系,校验好后再入库。

5、默认约束 default

        就是给列一个默认值,插入数据时,若没有给该列指定值,则给默认值。如果给了指定值,不管是 null 还是不是 null,都以设置的值为准

6、check 约束

        就是对数据值限定一个范围,8.0.16 版本后才起作用,check 约束也会像外键约束一样自动设置一个 check 约束名。语法如下:

        因为很多老版本 MySQL 不支持 check,所以把校验放在 java 程序中。

        常用的就是非空、唯一、主键、默认约束,外键约束在大公司不用,check 约束不用。

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

相关文章:

  • 桂林公司网站搭建百度推广后台
  • 咸阳高端网站建设属于网络营销特点的是
  • 合肥做淘宝网站推广百度一下首页登录
  • dz做美女网站企业查询系统官网天眼查
  • 用js做跳转到其他网站湖南最新消息今天
  • 做外贸网站的经验30个免费货源网站
  • ssm框架做网站best网络推广平台
  • wordpress 响应式 企业网站免备案域名
  • 武汉做网站选华企加速器查域名备案
  • 南京集团网站建设如何在网上推广
  • 公司网站怎么做推广网络营销的核心
  • 建设电子商务网站必须首先确定的是2345网址导航电脑版
  • 手游网站怎么做百度首页
  • 电脑网站手机版怎么做web个人网站设计代码
  • 广州应用多的自助建站资讯企业培训课程表
  • 网站建设 图纸网seo关键词快速排名前三位
  • 网站建设 岗位职责个人微信管理系统
  • 金属材料网站建设长沙百度快速排名优化
  • 企业网站建设 知乎西安官网seo
  • 制作一个在线收费网站北京外贸网站优化
  • 美女做艾网站搜索引擎优化是指
  • 检查色盲效果网站客服系统网页源码2022免费
  • 临沧市建设局网站网站推广途径和推广要点有哪些?
  • 网站建设sunmun长春网站建设制作
  • 婚纱手机网站制作如何制作自己的网站
  • 做网站 用asp网页制作代码
  • 广东省网站备案seo排名赚挂机
  • 公明做网站互联网平台推广
  • 网站有源码 怎么建设新手如何涨1000粉
  • 做网站和网页有什么区别电脑培训班零基础