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

    1.整型

    tinyint(m) 一个字节 -128~127

    smallint(m) 2个字节 -32768~32767

    mediumint(m) 3个字节 -8388608~8388607

    int(n) 4个字节 

    bigint(n) 8个字节

    如果加了unsigned,则范围值翻倍。如tinyint unsigned的取值范围为(0~256)。

    int(m)里的m是表示SELECT查询结果集中的显示宽度,并不影响实际的取值范围,没有影响到显示的宽度,不知道这个m有什么用。

    2.浮点型

    float(m,d) 单精度浮点型 8位精度(4字节) m总个数, d小数位

    double(m,d) 双精度 16位精度(8字节)

    设一个字段定义为float(5,3),如果插入一个数123.45678,实际数据库里存的是123.457,但总个数还以实际为准,即6位。

    3.定点数

    浮点型在数据库中存放的是近似值,而定点类型在数据库中存放的是精确值。

    decimal(m,d) m的取值范围是 m<65, d<30且d<m

    4.字符串

    char(n) 固定长度,最多255个字符

    varchar(n) 固定长度,最多65535个字符

    tinytext 可变长度,最多255个字符

    text 可变长度,最多65535个字符

    mediumtext 可变长度,最多2的24次方-1

    longtext 可变长度,最多2的32次方-1

    char和varchar:
    1.char(n) 若存入字符数小于n,则以空格补于其后,查询之时再将空格去掉。所以char类型存储的字符串末尾不能有空格,varchar不限于此。 
    2.char(n) 固定长度,char(4)不管是存入几个字符,都将占用4个字节,varchar是存入的实际字符数+1个字节(n<=255)或2个字节(n>255),所以varchar(4),存入3个字符将占用4个字节。 
    3.char类型的字符串检索速度要比varchar类型的快。

    varchar和text: 
    1.varchar可指定n,text不能指定,内部存储varchar是存入的实际字符数+1个字节(n<=255)或2个字节(n>255),text是实际字符数+2个字节。 
    2.text类型不能有默认值。 
    3.varchar可直接创建索引,text创建索引要指定前多少个字符。varchar查询速度快于text,在都创建索引的情况下,text的索引似乎不起作用。

    5.日期时间类型

    date 日期 '2015-11-2'

    time 时间 '11:22:33'

    datetime 日期时间 '2015-11-2 12:34:56'

    timestamp 自动存储记录修改时间

    若定义一个字段为timestamp,这个字段里的时间数据会随其他字段修改的时候自动刷新,所以这个数据类型的字段可以存放这条记录最后被修改的时间。

    数据类型属性

    MySQL关键字        含义

    NULL          数据列可包含NULL值

    NOT NULL         数据列不允许包含NULL值

    DEFAULT        默认值

    PRIMARY KEY      主键

    AUTO_INCREMENT    自动递增,适用于整数类型

    UNSIGNED        无符号

    CHARACTER SET name  指定一个字符集

  • 相关阅读:
    [转发]深入理解git,从研究git目录开始
    iOS系统网络抓包方法
    charles抓包工具
    iOS多线程中performSelector: 和dispatch_time的不同
    IOS Core Animation Advanced Techniques的学习笔记(五)
    IOS Core Animation Advanced Techniques的学习笔记(四)
    IOS Core Animation Advanced Techniques的学习笔记(三)
    IOS Core Animation Advanced Techniques的学习笔记(二)
    IOS Core Animation Advanced Techniques的学习笔记(一)
    VirtualBox复制CentOS后提示Device eth0 does not seem to be present的解决方法
  • 原文地址:https://www.cnblogs.com/sylar-liang/p/4317714.html
Copyright © 2011-2022 走看看