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

个人网站设计论文摘要安徽网络优化公司

个人网站设计论文摘要,安徽网络优化公司,中国建设银行郑州分行网站,做社区网站目录 1. 空属性 2. 默认值 3. 列描述 4. zerofill 5. 主键 6. 自增长 7. 唯一键 8. 外键 真正约束字段的是数据类型,但是数据类型约束很单一,需要有一些额外的约束来更好的保证数据的合法性,业务角度上看用于保证数据的正确性。约束本…

目录

1. 空属性

2. 默认值

3. 列描述

4. zerofill

5. 主键

6. 自增长

7. 唯一键

8. 外键


        真正约束字段的是数据类型,但是数据类型约束很单一,需要有一些额外的约束来更好的保证数据的合法性,业务角度上看用于保证数据的正确性。约束本质是通过技术手段保证用户插入正确的数据。

1. 空属性

        两个值:null(默认的)和 not null(不为空)。

        数据库默认字段基本都是字段为空,但是在实际开发中,尽可能保证字段不为空,因为数据为空没有办法参加运算

        下列属性中的 Null 为 NO 表示插入时该字段不能为空,Null 为 YES 时,表示插入时该字段可以为为空。 

        当插入时,不对 class_room 字进行插入,就会插入默认值,这里报错是说没有默认值,所以插入失败。

        这里对 class_room 插入 null,会报错说 class_room 不能为 null。 这就叫做非空约束

2. 默认值

        default:某一字段会经常性的出现某个具体的值,可以在一开始就指定好该字段的默认值,在需要真实数据的时候,用户可以选择性的使用默认值。

         使用 show create table 表名 查出来的 name 字段是没有默认值的,而 desc 表名 查出来的是 name 字段默认值为 null。这里就有冲突,这时候以 show create table 表名 查出来的为准

        在创建的时候设置 default 值,在查看表属性的时候 default 就是用户指定的值。

        插入时,当用户没有对有默认值的字段进行插入,则就会使用默认值进行填充。 

        如下图所示,name 字段没有默认值,所以在插入的时候没有明确指定 name 字段,插入失败。

知识点1:
       如果某一字段没有设置 default 值,那么在插入的时候必须明确指定该列的列名称进行插入,否则插入失败。如果某一字段设置 default 值,那么在插入的时候可以不用指定该列的列名称进行插入,默认有 default 值进行填充。换句话说,default 属性没有在插入时必须指定列名。
 

3. 列描述

        comment:没有实际含义,专门用来描述字段,会根据表创建语句保存,用于用户来进行了解。

        注:通过 desc 表名 是查看不到注释信息的,必须通过 show create table 表名 查看。 

4. zerofill

        zerofill 是一种显示上的约束,zerofill 的作用就是,如果数值类型宽度小于设定的宽度(数据类型后面的数字,比如:int(10)),自动填充 0。但是在数据库中存储的值没有改变,只是显示进行了格式化显示。添加 zerofill 约束之后,数值类型会变为 unsigned 类型

5. 主键

        主键:primary key 用来唯一的约束该字段里面的数据,不能重复,不能为空,一张表最多只能有一个主键(不意味着主键只能添加给一列,一个主键可以被添加到一列或者多列);主键所在的列通常是整数类型。

        如上图所示,在进行表的创建时,指定了 id 添加主键,则会自动将其设为非空且 key 属性设为 PRI。

        如上图所示,当表中有了主键为 1 的数据时,再插入 主键为 1 的数据就会插入失败,所以主键可以用于表示表中一条数据的唯一性。 

        当表创建好但是没有主键的时候,可以添加主键

alter table 表名 add primary key(字段列表);

        注:如果添加主键的那一列有重复的值,则添加主键会失败。 

        删除主键

alter table 表名 drop primary key;

        复合主键

        这里表示 id 和 course_id 合起来为一个主键,如果其中只有一个字段重复,是可以进行插入的。

        上述表表示,同一名学生不能同时选两门相同的课,不同的学生可以选相同的课,同一名学生可以选多门不同的课。 

        复合主键在创建表的时候或者添加时就必须一次指定好哪几列为主键,不能给一列添加主键之后再给另外一列添加主键。

        如上图所示,这时候 id 和 course_id 已经是主键了,将 score 添加主键就会失败。 

6. 自增长

        自增长(auto_increment):当对应字段不给值会自动的被系统触发,系统会从当前字段中已经有的最大值进行 +1 操作,得到一个新的不同的值。通常和主键搭配使用,作为逻辑主键。

        任何一个字段要做自增长,前提是本身是一个索引(key 一栏有值),并且自增长字段必须是整数且一张表最多只能有一个自增长。

        如下图,当进行插入的时候不指定 id,则默认会j将表中已有的最大值 +1 作为新数据该字段的值。 

        如下图所示,表的属性信息中有一个 auto_increment 属性,表示下次再插入数据时,自增长的值为多少。 这个值也可以进行手动的设置。

7. 唯一键

        一张表中往往有很多字段需要唯一性,但是一张表中只能有一个主键,唯一键可以解决表中有多个字段需要唯一性约束的问题

        唯一键的本质和主键差不多,唯一键允许为空(可以通过对空属性进行设置,使其不允许为空),而且可以允许多条数据为空,空字段不做唯一性比较。

    0 0   上述的 unique 也可以写成 unique key。 

        唯一键和主键的区别:
                主键更多的是标识这一条数据的唯一性。而唯一键更多的是标识某一字段的唯一性。就比如身份证号和邮箱号,一个人的身份证号用于标识这个人的唯一性,而邮箱号表示这个人的邮箱,可以没有,也不能对这个人进行唯一性标识,但是邮箱号是不可以重复的。上述中的身份证号和邮箱号的区别就可以对应看成主键和唯一键的区别。

8. 外键

        外键用于定义主表和从表之间的关系,外键约束主要定义在从表上,主表则必须有主键约束或唯一键约束。当定义外键后,要求外键列数据必须在主表的主键列存在或为 null。

foreign key (字段名) references 主表(列)

        如上图所示,主表为 class,从表为 student。从表中的 class_id 字段受到外键约束。当对 student 表中插入一个 class_id 不属于 主表 class 中 id 列中的数据,则会插入失败。 

        如下图,当前 class 表中有 id 为 1 和 2 的班级,当向 student 中插入数据时,class_id 字段没有在 class 表的 id 中存在,则会插入失败。如下图中插入赵六的数据。

        当 student 表中还存在 班级为 1 的学生时,删除 class 表中 id = 1 这一行数据也是不行的。 

 

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

相关文章:

  • 如何做色流量网站网站搜索引擎
  • 地方门户南宁优化网站网络服务
  • 北京网站制作网络营销策划书的结构
  • 色彩搭配 网站成都网站制作关键词推广排名
  • 信誉好的东莞网站建设优化营商环境心得体会
  • 如何申请域名注册长春网站优化指导
  • 重庆网站建设网站自助建站网站模板
  • 前端用什么框架做网站关键词挖掘查询工具
  • 壮族自治区桂林疫情情况 最新消息湖南竞价优化哪家好
  • 手机网站什么意思萧山区seo关键词排名
  • 自己怎做网站网页设计参考网站
  • 有没有电商设计的网站参考宽带推广方案
  • 在线做venn图网站如何策划一个营销方案
  • 做网站公司 汉狮网络seo公司厦门
  • 专门做市场调查的网站北京网站优化体验
  • 这样做的网站百度的网址是什么
  • 互联壹佰做企业网站10条重大新闻事件
  • 中国网站建设公司有哪些方面前端优化
  • 餐饮网站建设教程建站模板平台
  • 网站建设和管理的总结怎么写哈尔滨网站建设
  • 网站建设有什么岗位职责怎么做推广和宣传平台
  • 广州网站建设的价格杭州推广公司
  • 个人做地方民生网站广州网络推广外包平台
  • 三线建设网站什么企业需要网络营销和网络推广
  • 网站建设优化seo鸡西seo
  • 一个人的免费高清影院网站seo入门基础教程书籍
  • 网站开发描述软文网官网
  • 做网站哪种语言好免费网上申请注册
  • 免费制作微信网页网站定制网站建设
  • 网站底部显示百度站点地图建设网站流程