zoukankan      html  css  js  c++  java
  • mysql完整性约束

    六 完整性约束:
            not null  default:
                    如果单独设置not null ,不能插入空值
                    如果设置了not null, 又指定了default, 可以插入空值, 默认值生效
    
            unique  key:  单列唯一
                    unique(id),
                    unique(name)
                    create table t1(id int not null);
    
            联合唯一:  多行记录中只要有一列字段的值不同就可以, 完全一致不行
                unique(id, name)
    
            primary key : 单列主键  不能为空, 唯一
                化学反应  : not null + unique  //这样设置会显示成PRI  但与设置成primary  不同,
    
    
            联合主键 :create table t9(
                        id int,  
                        name varchar(10),
                        primary key(id,name)
                            );
    
                         一行记录中   id 和name  有一项不同即可
    
    
            auto_increment :  自动增长,默认+一个步长, 数字
                自动增长, 如果删除已经创建的 ID  插入下一条记录时候 依然会增长,  旧的ID仍然占据,
                 再次插入新的数据 时候, ID在最后一条记录的ID上面增长
    
    
            truncate  :  清空表, 删除所有记录, ID  重新插入数据时候, ID 初始化0
                truncate student;  //清单表student
                    清空表区分delete和truncate的区别:
                        delete from t1; #如果有自增id,新增的数据,仍然是以删除前的最后一样作为起始。
                        truncate table t1;数据量大,删除速度比上一条快,且直接从零开始。
    
    
    
    
            起始偏移量:  auto_increment_offset
            步长: auto_increment_increment
            show variables like "auto_inc%";  // 查询可用的开头是quto_inc的词
                set session quto_increment_increment=5; //设置步长,  当次连接中有效,
    
                set global auto_increment_increment=3;   //设置步长是3,  全局配置, 之后都生效
    
                set global auto_increment_offset=3;  //设置起始偏移量 ,起始值3
                tip:  如果auto_increment_offset的值大于auto_increment_increment的值,则auto_increment_offset的值会被忽略
                        设置步长和偏移量之后,需要重登录
    
    
    
            foreign key: 外键 (关联其他表, 的数据, 省空间//)
                constraint 外键名 foreign key((副表)本表字段)  references 主表名(字段)  //这样创建数据不同步,
    
                constraint 外键名 foreign key((副表)本表字段)  references 主表名(字段)
                on delete cascade   //同步删除
                on update cascade  //同步更新
                 三种关系:  一对一
                            一对多
                            多对一
    
  • 相关阅读:
    css代码建议
    分别获取json对象的键值
    d3.time.format时间模式
    d3.js学习笔记 -- 尺度
    解决slideDown()、slideUp()执行结束后才执行下一次,导致鼠标离开后很久动画依然在执行的问题
    正则表达式
    href="#"与href="javascript:void(0)"的区别
    jQuery手动触发事件
    ajax请求超时
    模态框遮罩层,兼容IE
  • 原文地址:https://www.cnblogs.com/tcpblog/p/9997739.html
Copyright © 2011-2022 走看看