• 浅谈 sql 中数据的约束


    数据约束

    ——对用户操作表的数据进行约束

    1、默认值

    ——当用户对使用默认值的字段不插入值的时候,就使用默认值

    1)对默认值字段插入null是可以的。

    2)对默认值字段可以插入非null

    【例如:address  varchar(20)  default '广州天河'  ——默认值

    2、非空

    ——限制字段必须赋值

    1)非空字符必须赋值

    2)非空字符不能赋null

    【例如:gender varchar(2)  not  null    ——非空

    3、唯一

    ——对字段的值不能重复

    1)唯一字段可以插入null

    2)唯一字段可以插入多个null

    【例如:id int inique   ——唯一

    4、主键

    ——唯一+非空

    1)通常情况下,每张表都会设置一个主键字段。用于标记表中的每条记录的唯一性。

    2)建议不要选择表的包含业务含义的字段作为主键,建议给每张表独立设计一个非业务含义id字段。

    【例如:id  int  primary key   —— 主键

    5、自增长

    ——对应值自动增长

    【例如:id int(4) zerofill primary key  auto_increment    ——自增长,从0开始  zerofill零填充

    6、外键

    ——约束两种表的数据

    出现两种表的情况时为了解决数据冗余高问题独立出一张表

    例如: 员工表    部门表

    问题出现在插入员工表数据的时候,员工表的部门ID字段可以随便插入!!!!!

    解决问题:使用外键约束——约束插入员工表的部门ID字段值在员工表的部门ID字段添加一个外键约束!!!)

    1)被约束的表称为副表,约束别人的表称为主表,外键设置在副表上的!!!

    2)主表的参考字段通用为主键!

    3)添加数据: 先添加主表,再添加副表

    4)修改数据: 先修改副表,再修改主表

    5)删除数据: 先删除副表,再删除主表

       好事主先来,坏事副表当

  • 相关阅读:
    尝试用Gearman实现分布式处理(PHP)
    如何在ubuntu上安装node.js
    Linux crontab定时执行任务 命令格式与详细例子
    MySQL的information_schema
    Ubuntu安装MongoDB
    Log4j日志管理系统简单使用说明
    android:screenOrientation横屏竖屏设置
    Android 自定义progressBar样式
    Java使用JDOM解析XML(转载,简单又详细)
    Caused by: android.util.AndroidRuntimeException: Calling startActivity() from outside of an Activity
  • 原文地址:https://www.cnblogs.com/bigerf/p/6041319.html
Copyright © 2020-2023  润新知