第八章 1选择合适的数据类型,Char和varchar;Text和blob;浮点数与定点数:;日期类型的选择:mysql总共有5种日期时间类型:

Char和varchar

Char是固定长度字符类型

Varchar是可变长度的字符类型

 

Char类型在存储数据时,会自动去除尾部空格;前面空格会保留;

Varchar 类型会保留前后空格;

例如:INSERT into dev_learn_type VALUES(222,22,'  abdc  ','  abdc  ','');

Char的长度是固定的,所以处理速度比varchar要快;

 

 

Text和blob

Text 和blob第一个 主要区别就是blob是二进制安全的,也就是可以保存图片等;

Text只能保存字符数据;

 

Text又分 text ,mediumtext,longtext ;一般选择可以满足需求的最小的存储类型;有利于性能优化;

 

Text和blob 在大量删除内容时,会使存储的物理文件产生‘空洞’,这些空洞 在插入记录时,效率会受到影响。可以使用 OPTIMIZE TABLE 表名;进行处理;

 

浮点数与定点数:

Mysql的 float 。double。real 用来表示浮点数;

浮点数在插入数据的精度超过定义的实际精度时会四舍五入;

 

Mysql decimal。Numberic.表示定点数:

定点数在 如果超过定义的精确度,在mysql的默认的sqlmodel下会四舍五入插入;

Mysql的TRADITIONAL 传统模式下,会插入失败,报错;

 

精度要求较高的情况下 一般选用 定点数;

 

日期类型的选择:

日期类型根据需要选择可以满足的占用最小存储的类型,这样可以提高操作表的效率;例如只需精确到年,这选择year类型;

记录的年份比较久远,需要选择datetime,因为timestamp 记录范围小:

 

如果需要满足不同时区的用户使用,需要选择timestamp类型,因为 timestamp 类型 和时区 是有关的;会根据时区的不同 自动计算当前时区对应的日期;

 

mysql总共有5种日期时间类型:

 

类型           字节          最小值                           最大值

 

DATE         4            1000-01-01               9999-12-31

 

DATETIME 8      1000-01-01 00:00:00  9999-12-31 23:59:59

 

TIMESTAMP  4   19700101080001       2038-01-19 11:14:07

 

TIME           3        -838:59:59                838:59:59 

 

YEAR         1                 1901                     2155

 

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值