• MySQL-数据类型


    MySQL-数据类型

    一、数据类型

    1、整数类型

    分为:

    tinyint(1字节), smallint(2字节), mediumint(3字节),int(4字节), bigint(8字节)

    默认情况下,这些整数类型都是可正可负的,那么:

    tinyInt就只能存储:  -128--127这些数

       2、小数类型

    可以分为:

    (1)单精度浮点型: float,非精确数,通常不设定长度

    (2)双精度浮点:double,非精确数,通常不设定长度

    (3)定点型:decimal,精确数,通常,定点型需要设定长度,形式为:decimal(总长, 小数位数) decimal(5,3) 12.000

    3、时间日期类型

    有如下:

    date,  time,  datetime,  year,  timestamp

    注意:

    写入数据库时,直接的时间日期数据,应该用单引号引起了。

    year类型可以是4位整数或4位纯数字字符串,也可以是2位整数或2位纯数字字符串

    timestamp表示的含义是“时间戳”,其实就是指“当前时刻”,本质上是一个数字,代表从1970年1月1日0点0分0秒到某个时间之间的秒数数值。该类型的字段值无需赋值,而是会自动取得当前时间值。

    4、字符串类型

    (1)最基本最重要的2个:

      varchar类型:可变长度字符串类型。最多能存储65532个字节的字符串——也还要考虑字符编码。设定的长度只是最长长度,但可以不存满,则实际长度以数据长度为准。

      char类型:定长字符串类型。最多能存储256个字符。如果存储的数据不足设定的长度,则会自动补空格填满。

    注意:设定时都需要给定长度,比如:varchar(20),  char(6); 一行的所有内容的总的存储长度也有个限制,约65535个。

     (2)2个二进制文本:

      binary: 类似char,只是里面不存“文本”,而是存“文本的二进制数据”

      varbinary: ,类似varchar,同样,不存“文本”,而是存“文本的二进制数据”

    (3)2个大文本类型:

      text: 可以存储“超大文本”,且其实际的长度并不占用一行的长度。相对char和varchar,效率低。

      blob:  可以存储“超大二进制文本”,通常用于存储图片这种“二进制数据”

    (4)2个有关“选项”的文本存储形式

      enum:专门用于方便存储类似表单中的“单选项”的值。

      形式:   篮球,足球,乒乓球

      enum(‘选项1’,‘选项2’,‘选项3’,......)

      这些选项的值虽然是字符串,但其数据库内部存储其实是数字(效率高),他们的数字值是:1, 2, 3,4,              5,。。。。。最多6万多个。

      set:专门用于方便存储类似表单中的“多选项”的值。

      形式:篮球,足球,乒乓球

      set (‘选项1’,‘选项2’,‘选项3’,......)

      这些选项的值虽然是字符串,但其数据库内部存储其实是数字(效率高),他们对应的数字值是:1, 2,4, 8,   16,。。。。。最多6万多个

      7=1+2+4

    可见,enum,set类型的字段,限制的“字符串”数据值。

    5、通用设定形式

    定义一个字段的时候的类型的写法。

    比如:

    create  table  tab1  (f1  数据类型 );

    数据类型: 类型名[(长度n)]  [unsigned]  [zerofill]

    长度n: 表示的意思是该数字的“显示形式上的长度”,

    unsigned:设定为“无符号”数,则此时不能存储负数,正数几乎加倍。

    zerofill:填充0,是指如果一个数字的长度不够指定长度的时候,可以在左边填充0以补到该长度。

    注意: 如果设置了zerofill,则自动也就表示同时具备了unsigned修饰的含义

     

  • 相关阅读:
    【转】Linux逻辑卷管理
    oracle range分区表已经有了MAXVALUE 分区,如何添加分区?要不能删除MAXVALUE分区里的数据,不影响在线应用。
    切换用户后whoami打印用户的问题
    tomcat版本号修改已dwr配置错误安全漏洞整改
    [LeetCode]: 64: Minimum Path Sum
    [LeetCode]: 292: Nim Game
    [LeetCode]: 22 : Generate Parentheses
    [LeetCode]: 121: Best Time to Buy and Sell Stock
    [LeetCode]: 62: Unique Paths
    [LeetCode]: 145: Binary Tree Postorder Traversal
  • 原文地址:https://www.cnblogs.com/wjglm/p/9460283.html
Copyright © 2020-2023  润新知