• MySql数据类型之间的区别


    TIMESTAMP与DATETIME的区别

    1. TIMESTAMP只使用DATETIME一半的存储空间。
    2. DATETIME默认值为null,TIMESTAMP默认为当前时间
    3. DATETIME不会自动更新时间,但是可以设置 DEFAULT CURRENT_TIMESTAMP从而设置默认值

    需要注意的是如果向允许为空的datetime类型的字段里插入空值(如图1),那么它的值就为null,
    如果该字段不允许为空,则像下图那样写插入语句会报错。

    而TIMESTAMP不论是否允许为空都会设置默认时间(如图2)。

    建表语句

    DROP TABLE
    IF EXISTS test;
    
    CREATE TABLE test (
    	id BIGINT (20) NOT NULL AUTO_INCREMENT,
    	date1 TIMESTAMP,
    	date2 datetime,
    	PRIMARY KEY (id)
    )
    

    图1:

    图2:

    如果想给datetime赋予默认时间,只需插入时不指定该字段即可(如图3)

    图3:

    1. datetime保存的范围为1001年到9999年,timestamp保存的范围为1970年到2038年
    2. timestamp显示的值依赖时区,根据时区的设置,存储的值会有所不同。

    tinyint(1)与tinyint(2)的区别

    tinyint(1)与tinyint(2) 这里的1和2值的是存储大小,如果使用zerofill则会填充0,
    但是navicat中不会显示填充的0

    BLOB和TEXT的区别

    BLOB使用二进制方式存储,没有排序规则或字符集,而TEXT有排序规则和字符集,如果只需要排序前面一小部分字符,则可以减少max_sort_length的配置,或者使用order by sustring(column,length)

  • 相关阅读:
    PHP
    单引号和双引号的区别和效率问题
    SFDC 401认证准备及考试
    SFDC 401 最新考试真题
    3 report formats of SFDC
    HTML输入框点击内容消失
    RDD的转换操作(续)
    RDD的转换操作
    SparkContext和RDD的说明
    集群模式相关概念
  • 原文地址:https://www.cnblogs.com/yimengyizhen/p/13198895.html
Copyright © 2020-2023  润新知