zoukankan      html  css  js  c++  java
  • 数据库---约束

    1. 默认约束   DEFAULT '    '  ;

    address VARCHAR(30)   DEFAULT'张店'

                   用户使用默认的值补齐数值,自动补位;

           注意

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

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

    1. 非空约束   NOT NULL

    uname VARCHAR(10   ) NOT NULL,

    限制 字段 必须填写数值

              注意

                     非空字符必须赋值

                          非空字符不能赋null

    3. 唯一约束   UNIQUE

     

           sername VARCHAR(20) UNIQUE,-- 唯一 

      添加约束:create table 表名( 列名1 列值1 约束条件,列名2 列值2 unique, ....)

      后期追加: alter table 表名 add unique(列名);

           对字段的值不能重复只能出现一次

        注意

                    唯一字段可以插入null                             

    唯一字段可以插入多个null

    主键  PRIMARY KEY

      作用    非空+唯一

               PRIMARY KEY 对于每个表通常都会有主键 一般是设为ID字段

    自增长

      作用    自动递增必须是int类型 ,被删除行不影响后续自增数

             ZEROFILL PRIMARY KEY AUTO_INCREMENT, -- 自增长,从0开始  ZEROFILL 零填充 

    主键约束(primary key):数据唯一,且不为空。

            创建表时直接添加在值后加约束

                单一约束:create table 表名( 列名1 列值1 primary key,...);

                联合约束:create table 表名(列名1 列值1, 列名2 列值2, .... 列名n 列值n,  primary key(列名1,列名2); )

            创建表后,补充约束alter table 表名 add primary key(列名1);

            删除约束:alter table 表名 drop primary key;

    外键

      作用 约束两种表的数据

           ALTER TABLE   副表明  ADD  CONSTRAINT  外键表名_主键表明_fk     FOREIGN KEY(deptId) REFERENCES     主键表明(参考字段)

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

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

    注意:

       1.在从表中添加数据时,外键关联列中存储的数据必须是主表中存在的数据
       2.想要删除主表中正在被从表使用的行,必须先在从表删除,再删除主表

    主键约束外键

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

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

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

          

  • 相关阅读:
    并查集
    结构体字节对齐
    Dijkstra算法(单源最短路径)
    图的遍历
    二叉树的非递归遍历
    浅谈C语言中的联合体
    二叉排序(查找)树
    KMP算法
    C语言文件操作解析(四)
    Trie树
  • 原文地址:https://www.cnblogs.com/layuechuquwan/p/11212264.html
Copyright © 2011-2022 走看看