zoukankan      html  css  js  c++  java
  • mysql数据类型、约束

    一、数据类型

      数字:

      tinyint:无符号长度0-255 有符号长度 -128-127

      int、bigint、float、double、decimal(类似)

      int(5):显示长度,zerofill不足位用0补齐

      字符:

      char:定长数据结构,存取速度快,浪费空间

      varchar:变长数据结构,存取速度慢,节省空间

      length():查看字节数

      char_length():查看字符数

      时间类型:

      year:1901/2155

      DATE:YYYY-MM-DD

      TIME:HH:MM:SS

      DATETIME:YYYY-MM-DD HH:MM:SS

      create table s1(d date,s time,dt datetime);

      insert into s1 values(now(),now(),now());

      枚举:多选一

      enum

      集合:多选多

      set

      create table consumer(id int,sex enum('male','female'),fev set('read','play','music');

      insert into consumer values(1,'male','read,play');

    二、完整性约束

      1、not null 与default:不为空、设置默认值

        cteate table t1(id int not null default 1,num int);

      2、unique:唯一

        第一种写法:create table s1(id int unique);

        第二种写法:create table s1(id int,unique(id));

        联合唯一:

        create table s1(id int,num int,unique(id,num));

        id与num只要有一个不同就可以添加

      3、primary key

        单列作为主键,多列作为主键

        primary key 等价于 not null +unique

        示例:

        create table s1(id int primary key,num int);

        create table s1 (id int, num int,primary key(id,num));

      4、auto_increment

        约束的字段自动增长,约束的字段必须同时被key约束

        示例:

        create table s1(id int primary key auto_increment,num int);

        insert into s1(num) values(2);

        

        # 设置步长 为会话设置,只在本次连接中有效
          set session auto_increment_increment=5;

        #全局设置步长 都有效。
          set global auto_increment_increment=5;

        # 设置起始偏移量
          set global auto_increment_offset=3;

        

  • 相关阅读:
    Serverless 的初心、现状和未来
    父亲的茶杯
    子慕谈设计模式系列(三)
    子慕谈设计模式系列(二)——设计模式六大原则
    子慕谈设计模式系列(一)
    初入angular4——实际项目搭建总结
    欲练JS,必先攻CSS——前端修行之路
    运用google-protobuf的IM消息应用开发(前端篇)
    “倔驴”一个h5小游戏的实现和思考(码易直播)——总结与整理
    【猿分享第10期】微信小程序Meetup扫盲专场回顾(转载)
  • 原文地址:https://www.cnblogs.com/wszxdzd/p/9672978.html
Copyright © 2011-2022 走看看