一文掌握SQL基础( 二 )


储存范围
TINYTEXT
0~255字节
TEXT
0~65535字节
MEDIUMTEXT
0~16777215字节
LONGTEXT
0~4294967295字节
5.日期与时间类型MySQL提供的表示日期和时间的数据类型分别是 :YEAR、DATE、TIME、DATETIME 和 TIMESTAMP 。下图列举了日期和时间数据类型所对应的字节数、取值范围、日期格式以及零值:
数据类型
字节数
取值范围
日期格式
零值
YEAR
1
1901~2155
YYYY
0000
DATE
4
1000-01-01~9999-12-31
YYYY-MM-DD
0000-00-00
TIME
3
-838:59:59~ 838:59:59
HH:MM:SS
00:00:00
DATETIME
8
1000-01-01 00:00:00~9999-12-31 23:59:59
YYYY-MM-DD HH:MM:SS
0000-00-00 00:00:00
TIMESTAMP
4
1970-01-01 00:00:01~2038-01-19 03:14:07
YYYY-MM-DD HH:MM:SS
0000-00-00 00:00:00
5.1 YEAR类型YEAR类型用于表示年份,在MySQL中,可以使用以下三种格式指定YEAR类型 的值 。
1、使用4位字符串或数字表示,范围为’1901’—'2155’或1901—2155 。例如,输人 ‘2019’或2019插人到数据库中的值均为2019 。
2、使用两位字符串表示,范围为’00’—‘99’ 。其中,‘00’—'69’范围的值会被转换为 2000—2069范围的YEAR值,‘70’—'99’范围的值会被转换为1970—1999范围的YEAR 值 。例如,输人’19’插人到数据库中的值为2019 。
3、使用两位数字表示,范围为1—99 。其中,1—69范围的值会被转换为2001— 2069范围的YEAR值,70—99范围的值会被转换为1970—1999范围的YEAR值 。例 如,输人19插入到数据库中的值为2019 。
请注意:当使用YEAR类型时,一定要区分’0’和0 。因为字符串格式的’0’表示的YEAR值是2000而数字格式的0表示的YEAR值是0000 。
5.2 TIME类型TIME类型用于表示时间值,它的显示形式一般为HH:MM:SS,其中,HH表示小时,MM表示分,SS表示秒 。在MySQL中,可以使用以下3种格式指定TIME类型的值 。
1、以’D HH:MM:SS’字符串格式表示 。其中,D表示日可取0—34之间的值, 插人数据时,小时的值等于(DX24+HH) 。例如,输入’2 11:30:50’插人数据库中的日期为59:30:50 。
2、以’HHMMSS’字符串格式或者HHMMSS数字格式表示 。例如,输人’115454’或115454,插入数据库中的日期为11:54:54
3、使用CURRENT_TIME或NOW()输人当前系统时间 。
5.3 DATETIME类型DATETIME类型用于表示日期和时间,它的显示形式为’YYYY-MM-DD HH: MM:SS’,其中,YYYY表示年,MM表示月,DD表示日,HH表示小时,MM表示分,SS 表示秒 。在MySQL中,可以使用以下4种格式指定DATETIME类型的值 。
?以’YYYY-MM-DD HH:MM:SS’或者’YYYYMMDDHHMMSS’字符串格式表示的日期和时间,取值范围为’1000-01-01 00:00:00’—‘9999-12-3 23:59:59’ 。例如,输人’2019-01-22 09:01:23’或 ‘20140122_0_90123’插人数据库中的 DATETIME 值都为 2019-01-22 09:01:23 。
1、以’YY-MM-DD HH:MM:SS’或者’YYMMDDHHMMSS’字符串格式表示的日期和时间,其中YY表示年,取值范围为’00’—‘99’ 。与DATE类型中的YY相同,‘00’— '69’范围的值会被转换为2000—2069范围的值,‘70’—'99’范围的值会被转换为1970—1999范围的值 。
2、以YYYYMMDDHHMMSS或者YYMMDDHHMMSS数字格式表示的日期 和时间 。例如,插入20190122090123或者190122090123,插人数据库中的DATETIME值都 为 2019-01-22 09:01:23 。
3、使用NOW来输人当前系统的日期和时间 。
5.4 TIMESTAMP类型TIMESTAMP类型用于表示日期和时间,它的显示形式与DATETIME相同但取值范围比DATETIME小 。在此,介绍几种TIMESTAMP类型与DATATIME类型不同的形式:
1、使用CURRENT_TIMESTAMP输人系统当前日期和时间 。
2、输人NULL时系统会输人系统当前日期和时间 。
3、无任何输人时系统会输入系统当前日期和时间 。
6.二进制类型在MySQL中常用BLOB存储二进制类型的数据,例如:图片、PDF文档等 。BLOB类型分为如下四种:
数据类型
储存范围
TINYBLOB
0~255字节
BLOB
0~65535字节
MEDIUMBLOB
0~16777215字节
LONGBLOB
0~4294967295字节
四、数据库、数据表的基本操作1.数据库的基本操作MySQL安装完成后,要想将数据存储到数据库的表中,首先要创建一个数据库 。创 建数据库就是在数据库系统中划分一块空间存储数据,语法如下:


推荐阅读