初学MySQL之数据类型

在这里插入图片描述常用的数据类型有:

  1. 数据类型
  2. 字符类型
  3. 日期和时间类型

在这里插入图片描述
例子:

create table emp
(
	id int(11),
	name varchar(25),
	deptId int(11),
	salary float
);

d字段的数据类型为int(11),注意后面的数字11,这表示的是该数据类型指定的显示宽度,指定能够显示的
数值中数字的个数。
例如:year int(4),该声明指明,在year字段中的数据一般只显示4位数字的宽度。
显示的宽度和数据类型的取值范围是无关的。显示宽度只是指明MySQL最大可能显示的数字个数,数值的
位数小于指定的宽度时会由空格填充;如果插入了大于显示宽度的值,只要该值不超过该类型的取值范围,
数值依然可以插入,而且能够显示出来。
例如:向year字段插入一个数值19999,当使用select查询该列的时候,MySQL显示的将是完整的带有5位
数字的19999,而不是4位数字的值。
可以在定义表结构时指定整数类型的显示宽度,如果不指定,系统为每一个类型指定默认的宽度值,如:

在这里插入图片描述
提示:显示宽度只是用于显示,并不能限制取值范围和占用空间,如:int(3)会占用4个字节的存储空间,并且允

许的最大值也不会是999,而是int所允许的最大值。

2. 浮点数类型和定点数类型

MySQL中使用浮点数和定点数来表示小数。浮点类型有两种:单精度float和双精度double。定点类型只有一种:
decimal。浮点类型和定点类型都可以用(M,N)来表示,其中M表示精度,表示总共的位数;N表示标度,是表示小
数的位数。

在这里插入图片描述
例:创建表tmp2,其中x、y、z数据类型依次为float(5,1),double(5,1)和decimal(5,1),
向表中插入数据5.12、5.15和5.123,如下

在这里插入图片描述

3. 时间和日期类型

在这里插入图片描述
1.Year类型
Year类型表示年,可以使用各种格式指定year的值
以4位字符串或者4位数字格式表示year,取值范围’1901’~‘2155’,输入格式为‘YYYY’或者YYYY,例如:
输入’2010’或2010
以2位字符串格式表示的year,范围’00‘-’99‘。’00‘-’69‘和’70‘-’99‘范围的值分别被转换成2000-2069和1970-1999
范围的year的值。
以2位数字表示的year,范围1-99。1-69和70-99范围的值分别被转换为2001-2069和1970-1999范围的year值。
2.TIME类型
TIME类型用在只需要时间信息的值,在插入数据时要注意,因为可以采用非严格语法,支持

在这里插入图片描述
3.DATE类型
DATE类型用在仅需要日期值时,没有时间部分,在插入遵循 YYYY-MM-DD、 YY-MM-DD、 YYYYMMDD、 YYMMDD都可以,并且允许非严格语法,比如插入98.11.31 98/11/31 98@11@31,任何标点符合都可以做日期、时间的分割符。
使用current_date或者now(),可以插入当前系统日期。
4.DATATIME类型
DATATIME类型用在需要同时包括日期和时间信息的值,格式为‘YYYY-MM-DD HH:MM:SS’、‘YYYYMMDDHHMMSS’、 ‘YY-MM-DD HH:MM:SS’、‘YYMMDDHHMMSS’、 YYYYMMDDHHMMSS、 YYMMDDHHMMSS。
5.TIMESTAMP类型
TIMESTAMP的显示格式与DATETIME相同,但TIMESTAMP的取值范围小于DATETIME的取值范围,为‘1970-01-01 00:00:01’ UTC~‘2038-01-19 03:14:07’ UTC,其中UTC为世界标准时间,在插入数据时,要保证在合法的取值范围内。

实际操作:

-- 建立一个temp3类  时间timestamp型测试表格
create table temp3(a TIMESTAMP);
insert into temp3 values('1970-1-1 00:10:00');
insert into temp3 values('1980-1-1 00:10:00');
insert into temp3 values('1990-1-1 00:10:00');
insert into temp3 values('2000-1-1 00:10:00');
insert into temp3 values('2010-1-1 00:10:00');
SELECT * FROM temp3;

在这里插入图片描述

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

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值