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

    一.字符类型:

    1.普通字符类型   一般用于存储:姓名  家庭地址   籍贯

     关键指令        最大字符长度                 特性

     char     255(个字符)       定长 (固定长度)

     varchar  65532 (个字符 )   变长  (必须给一个值)

    相同点:

           超出最大固定格式字符无法写入数据。

    不同点:

           Char:定长输入不够指定字符数时在右边用空格自动补齐,

                 不检查效率高,不给值有默认值1.(工作用的最多)

           Varchar:变长按输入的字符数实际大小分配存储空间,检

                查效率底,必须给一个值。(一般用在邮箱 、qq号)

    2.大文本类型   一般存储 :视频、音频、图片

    关键指令         最大字符长度               

    text       大于65535

    blob       大于65535

     

    二、数值类型:整型 18 21 101 、浮点型 2.78 33.66 

    1.数值类型  : 年龄  成绩   身高  体重  工资

       整型:根据存储数字的范围又 划分为如下类型。

         整型分:  无符号 : +11 等于 11 (+号可忽略不记)

                       有符号 : -17       

              范围分:

             指令    有符号存储范围         无符号存储范围   

            tinyint :微小整数      -128~127      0-255(unsigned)

            smallint :小整数

            mediumint:中整数

            int  :大整数                  0~224-1

            bigint :极大整数

            备注:如果不让出现负数要加unsigned。

    数值类型的宽度,是显示宽度,不能够控制给字段赋值,字段值的大小由类型决定。

    三、浮点型   (能存储带小数点的数) 19.23    21.75

    定义格式 :float (n,m)    n:表示总位数。

                       double(n,m)    m:表示小数位数。

    当字段值与类型不匹配时,字段值作为0处理;

    数值超出范围时,仅保存最大/最小值。

     

    四、日期时间类型  

    一般用于:注册时间  上课时间   开会时间  生日  入职日期

    年的指令: year     YYYY       2017        占用1个字节

    日期的指令:date    YYYYMMDD   20170619   占用4个字节

    时间的指令:time    HH:MM:SS   160258     占用3个字节

    日期时间的指令:datetime  YYYYMMDDHHMMSS  201706191602

    占用8个字节 如果不给datetime字段赋值时,默认值为null

    日期时间的指令:timestamp  YYYYMMDDHHMMSS 20170619160258

    占用4个字节 如果不给timestamp字段赋值时,自动以当前系统时间赋值

    mysql> create table t14(name char(10), # 姓名类型10个字符长度

        -> age tinyint(2) unsigned,  # 年龄类型是整数不能是复数

        -> pay float(7,2),  #

        -> s_year year,    #年

        -> birthday date,   #生日日期

        -> up_class time,  #时间

        -> meetting datetime  #日期+时间

    -> );                       #创建表

    mysql> desc t14;

     

    datetime与timestamp  的区别

    1.赋值的类型不一样。

    2.赋值的方式不一样。

    timestamp 当不给赋值的时候他自动获取系统时间。

    Datetime 当不给赋值的时候他默认为NULL(空)

     

    五、使用时间函数给日期时间类型字段赋值

    now()  #获取系统的当前时间。

    year() #获取指定日期里的 年。

    date() #获取日期

    month() #获取月

    day()   #获取几号

    time()  #获取时间

     

    六、枚举类型   性别   专业   科目  爱好

    (字段值只能在列举的范围内选择)

    单选的指令:enum (值列表:值1,值2,值n)  

    多选的指令:set  (值列表:值1,值2,值n)   

     

    例题:

    mysql> create table t9(

        -> name char(5),  #名字 字符型,宽度5

        -> sex enum("boy","girl","no"), #性别 只能选一个 男 女 不允许为空

        -> homeaddr varchar(20), #描述信息

        -> age tinyint unsigned, #年龄 无符号的微小型整数

    -> likes set("game","film","music","book","it"),

                                                   #爱好可以选择多个

        -> pay float(7,2), #学费

        -> s_year year, # 出生年份

        -> birthday date, #生日 日期

        -> up_time time, #上课时间

        -> meettint datetime #

    -> );

    字段约束条件:功能限制如何给字段赋值

    字段约束条件有四块:

    Null   字段是否允许赋空值   空  默认允许赋空值  

    not null  不允许为空

    Key    索引类型

    Default   字段的默认值,默认值的值是null(空)

              不给字段赋值值使用默认值给字段赋值

                设置默认值: default   值(要匹配要求)

    Extra   额外设置(自动增长)

  • 相关阅读:
    OCP-1Z0-053-V13.02-702题
    OCP-1Z0-053-V13.02-688题
    OCP-1Z0-053-V13.02-691题
    OCP-1Z0-053-V13.02-698题
    OCP-1Z0-053-V13.02-703题
    OCP-1Z0-053-V13.02-701题
    OCP-1Z0-053-V13.02-685题
    memcached 按键查找和批量查找
    catch(CException *e)捕获异常
    char数组最大长度
  • 原文地址:https://www.cnblogs.com/wwchihiro/p/9366185.html
Copyright © 2011-2022 走看看