DDL-数据类型

数值类型

整形
类型名称 字节大小
tinyint 1
smallint 2
mediumint 3
int 4
bigint 8
  • 设置符号类型

    默认为无符号,在数据类型后添加unsigned设置为无符号

    1
    2
    3
    4
    create table TableName(
    num1 int,#有符号
    num2 int unsigned# 无符号
    );
小数
  • 浮点型

    类型格式 字节大小
    float(M,D) 4
    double(M,D) 8

其中(M,D)可以省略。不省略时,M代表数字的总长度,D为小数部分长度。

  • 定点型

    类型格式 字节大小
    decimal(M,D) M+2

当精度要求高时,推荐使用定点型

使用decimal时,M的默认值为10,D的默认值为0

字符型

  • 短文本类型

    类型格式 上限字符长度
    char(M) M
    varchar(M) M
    其中`char`类型为固定(存储空间)长度字符,`varchar`为可变长度字符。其中`char`效率更高
  • 长字符

    类型格式 一般用途
    text 长文本
    blob 较大的二进制字符串(如图片)
  • 其他字符类型

    类型格式 一般用途
    enum 指定输入内容(只能输入单个)
    set 指定输入内容(可输入多个)

    使用方法:

    1
    2
    3
    4
    5
    6
    7
    8
    #enum类型
    create table tablename(
    column1 enum('char1','char2','charN')
    );
    #set类型
    create table tablename(
    column1 set('char1','char2','charN')
    );

    注意:列表内容均不区分大小写

日期型

类型格式 保存内容
year 仅年份
date 仅日期
time 仅时间
datetime 时间与日期(绝对)
timestamp 时间与日期(根据时区等因素改变)
  • datetime

    8字节,年份范围1000-9999

  • timestamp

    4字节,年份范围1970-2038