zoukankan      html  css  js  c++  java
  • SQL:认识数据库约束

    讲了关于数据库的很多内容,也讲了很多约束,对唯一和主键核查和规则外键约束很感兴趣。


    一、唯一和主键(实体完整性)
    区别:
    数量:一张表只可以有一个主键约束,却可以有多个唯一约束。
    是否空值:主键不允许为空,唯一允许为空。
    相同点:
    唯一性:都保证了数据的唯一性,不可重复。
    复合:均可由一个或多个字段复合形成。

    二、核查和规则
    区别:
    数量:一个字段,可以有多个约束,却只能有一个规则。
    先后:核查直接在字段上创建,而规则由单独对象创建,然后绑定到字段上面。 
    范围:核查是建立在一张表的基础上,而规则可以绑定到不同表里的字段。(假使十个表里有“数量”字段,核查需要建立10次,而规则可以只有一个)
    删除:删除表的同时,核查(约束)也被删除,而规则不会。
    相同点:
    规则通常被用于执行和核查约束相同的功能。

    三、外键(参照完整性:数据一致性)
    创建:
    右击数据库关系图——选择新建——选择需要创建约束的表

    在外键关系中选择添加——打开表和列规范进行设置——设置主键表和外键表


     
    注意:必须保证主键表和外键表有相同的列数(假如主键表有4列,那么外键表也必须有4列)。
                  必须保证主键表和外键表有相同的字段。

    修改:
    1,内容:主键表和外建表不一定需要有相同的列数,也不一定主键表和外建表需要有相同的字段。主外键约束,只要有相同的属性就可以使用。比如说在新闻类别表里,有新闻ID。在新闻内容表里,也有新闻ID。这是,就可以建立主外键约束。
    2,时间:2015.4.11 

    作用:
    外键联系主要是确保了数据的一致性,当外键表中的列值和主键表不符时,则无法保存;当改变了主键表中的列值,则外键表中对应的列值同时改变。



    请大家多多指教,谢谢!

  • 相关阅读:
    【转载】jyupter notebook入门指南
    【转载】CnBlogs博文排版
    【转载】如何知道自己适合做什么
    【转载】讲真,认知几乎是人和人之间唯一的本质差别。
    Geekband C++面向对象高级程序设计-第六周课程5
    Geekband C++面向对象高级程序设计-第六周课程3
    Outlier实验-补充记录1
    Outlier实验-出错记录1
    Geekband C++面向对象高级程序设计-第六周课程2
    Geekband C++面向对象高级程序设计-第六周课程1
  • 原文地址:https://www.cnblogs.com/hhx626/p/6010484.html
Copyright © 2011-2022 走看看