MySQL学习4_常用数据类型

整数

类型大小范围用途
tinyint1 bytes-2^7 ~ 2^7 -1小整数值
smallint2 bytes-2^15 ~ 2^15 -1较大整数值
mediumint3 bytes-2^23 ~ 2^23 -1较大整数值
int4 bytes-2^32 ~ 2^32 -1大整数值
bigint8 bytes-2^63 ~ 2^63 -1极大整数值
语法格式
	整型(N)    N位数字宽度,可省略

定点数

类型含义
decimal(m, d)总位数 < m,小数位 = d
  1. 数字长度大于m,四舍五入保存;
  2. 数字小数位位数小于d,用0填充;
    定义数据类型为 decimal(5, 2)
    100.267 存储为 100.27
    100.2 存储为 100.20
    10 存储为 10.000

浮点数

类型大小含义
float(m, d)4 bytes单精度浮点数值,8位精度,总位数 < m,小数位 = d
double(m, d)8 bytes双精度浮点数值,16位精度,总位数 < m,小数位 = d

浮点数指定保证最多8位或16位的准确性,其余的数字随机填充

字符串

类型大小用途
char0-255 byte定长字符串
varchar0-65535 bytes变长字符串
tinyblob0-255 bytes不超过 255 个字符的二进制字符串
tinytext0-255 bytes短文本字符串
blob0-65 535 bytes二进制形式的长文本数据
text0-65 535 bytes长文本数据
mediumblob0-16 777 215 bytes二进制形式的中等长度文本数据
mebiumtext0-16 777 215 bytes中等长度文本数据
longblob0-4 294 967 295 bytes二进制形式的极大文本数据
longtext0-4 294 967 295 bytes极大文本数据
语法格式
	字符串类型(N)     N表示字符串长度,必填;text不能指定长度

1. char 和 varchar:

  • char(n) 若存入字符数小于n,则以空格补于其后,查询之时再将空格去掉。所以char类型存储的字符串末尾不能有空格,varchar不限于此。
  • char(n) 固定长度,char(4)不管是存入几个字符,都将占用4个字节,varchar是存入的实际字符数+1个字节(n<=255)或2个字节(n>255),所以varchar(4),存入3个字符将占用4个字节。
  • char类型的字符串检索速度要比varchar类型的快。

2. varchar和text:

  • varchar可指定n,text不能指定,内部存储varchar是存入的实际字符数+1个字节(n<=255)或2个字节(n>255),text是实际字符数+2个字节。
  • text类型不能有默认值。
  • varchar可直接创建索引,text创建索引要指定前多少个字符。varchar查询速度快于text,在都创建索引的情况下,text的索引似乎不起作用。

日期

类型大小范围格式用途
date31000-01-01/9999-12-31YYYY-MM-DD日期值
time3‘-838:59:59’/‘838:59:59’HH:MM:SS时间值或持续时间
year11901/2155YYYY年份值
datetime81000-01-01 00:00:00/9999-12-31 23:59:59YYYY-MM-DD HH:MM:SS混合日期和时间值
timestamp41970-01-01 00:00:00/2038结束时间是第 2147483647 秒,北京时间 2038-1-19 11:14:07,格林尼治时间 2038年1月19日 凌晨 03:14:07YYYYMMDD HHMMSS混合日期和时间值,时间戳

布尔

类型含义
booleantrue或false,类型本质是tinyint

知识总结,交流学习,不当之处敬请指正,谢谢!


参考资料:
[菜鸟教程-MySQL教程]

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值