mysql中数据库字段类型详解

mysql中数据库字段类型详解

1,blob字段
mysql中blob是一个二进制大型对象,是一个可以储存大量数据的容器,它能容纳不同大小的数据。
mysql中blob的四种类型除了存储数据的大小有区别,其它都一样。
需注意:如果存储的文件过大,数据库性能也会下降很多。

	mysql中的四种BLOB类型:
	类型                                 大小(单位:字节)
	TinyBlob							最大255
	Blob									最大65K
	MediumBlob					最大16M
	LongBlob							最大4G

2,时间字段
日期类型
Date 格式
YYYY-MM-DD 支持范围为1000-01-01 到9999-12-31 并允许字符串或者数字为此列赋值

		 update sys_table set str_date =  12331212  where id = "11";
		 update sys_table set str_date= 1233-12-12 where id = "11"
	DateTime格式
		YYYY-MM-DD HH:MM:SS或YYYYMMDDHHMMSS  
		支持范围为1000-01-01 00:00:00到9999-12-31 23:59:59 并允许字符串或者数字为此列赋值。
		默认值为null,不会自动更新,可设置 default current_timestamp 新增时默认为当前时间
		
		 update sys_table set str_date =  12331212121212  where id = "11"
		 update sys_table set str_date= 1233-12-12 12:12:12  where id = "11"
	*TimeStamp格式*
		YYYY-MM-DD HH:MM:SS或YYYYMMDDHHMMSS   
		这是时间戳 ,从1970-01-01 00:00:00到2038-01-19 03:14:07,
		输出的时间为 Thu Jan 01 08:00:00 CST 1970 即utc格式(格林威治标准时间-世界标准时间即存储时会把当前时区的转化为utc存储,查询时又转化为当前时区输出),北京时间东八区和它相差8小时,再存储时会减8小时,所以用mybatis 读取时要自动加8小时
		由上可知对于跨时区的业务,timestamp比较适合
		设置的时间得大于1970年
		默认值 not null 默认时间为当前时间
		
		
		update sys_table set str_date =  20081212121212  where id = "11";
*关于两者的自动初始化和自动更新*
	create table test_mm 
	(
	 id int(1) default null,
	 hiredate timestamp not nul default current_timestamp on update current_timestamp,
	 hirrrrr datetime  not nul default current_timestamp on update current_timestamp
	)
在mysql5.6.5 以后,只要新建表时时间字段如上边这样设计,则
自动初始化-没有给该值赋值,会自动填充当前时间
自动更新--修改表中任何一个字段,会自动填充当前时间

mysql 中表示当前时间的字段:
CURRENT_TIMESTAMP
CURRENT_TIMESTAMP()
NOW()
LOCALTIME
LOCALTIME()
LOCALTIMESTAMP
LOCALTIMESTAMP()
以上字段都一样的意思

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值