MySQL常用数据类型

MySQL常用数据类型

小提示

MySQL系统服务开机自动运行

右键点击我的电脑–》管理–》服务和应用程序–》服务–》MySQL57

双击打开

启动类型选择 自动

点击应用

服务状态选择 启动

点击确定

小提示

utf8与utf8mb4区别

MySQL在5.5.3版本以后增加了utf8mb4编码,其中mb4是most bytes 4的含义,用来兼容四个字节的Unicode(万国码)。utf8mb4是utf8的一个扩展。

随着互联网的发展,产生了许多新类型的字符,例如emoji这种类型的符号,也就是我们通常在聊天时发的小黄脸表情,这种字符的出现不在基本多平面的Unicode字符之中,导致无法在MySQL中使用utf8存储,MySQL于是对utf8字符进行了扩展,增加了utf8mb4这个编码。

所以,设计数据库时如果想要允许用户使用特殊符号,最好使用utf8mb4编码来存储,使得数据库有更好的兼容性,但是这样设计会导致耗费更多的存储空间。

MySQL数据类型

MySQL数据类型

https://www.runoob.com/mysql/mysql-data-types.html

数据类型指定值和范围
charString(0~255)
varcharString(0~255)
tinytextString(0~255)
textString(0~65536)
blobString(0~65536)
mediumtextString(0~16777215)
mediumblobString(0~16777215)
longblobString(0~4294967295)
longtextString(0~4294967295)
tinyintInteger(-128~127)
smallintInteger(-32768~32767)
mediumintInteger(-8388608~8388607)
intInteger(-214847668~214847667)
bigintInteger(-9223372036854775808~9223372036854775807)
floatdecimal(精确到23位小数)
doubledecimal(24~54位小数)
decimaldouble转储为字符串形式
dateYYYY-MM-DD
datetimeYYYY-MM-DD HH:MM:SS
timestampYYYYMMDDHHMMSS
timeHH:MM:SS
enum选项值之一
set选项值子集
booleantinyint(1)

MySQL数值数据类型

在MySQL中,您可以找到所有SQL标准数字类型,包括精确数字数据类型和近似数字数据类型,包括整数,定点和浮点数。 此外,MySQL还具有用于存储位值的BIT数据类型。数字类型可以是有符号或无符号,但BIT类型除外。

下表显示了MySQL中数字类型的总结:

数字类型描述
TINYINT一个很小的整数
SMALLINT一个小的整数
MEDIUMINT一个中等大小的整数
INT一个标准整数
BIGINT一个大整数
DECIMAL定点数
FLOAT单精度浮点数
DOUBLE双精度浮点数
BIT一个字节字段

MySQL布尔数据类型

MySQL没有内置的 BOOLEANBOOL 数据类型。所以要表示布尔值,MySQL使用最小的整数类型,也就是TINYINT(1)。 换句话说,BOOLEANBOOLTINYINT(1)的同义词。

MySQL字符串数据类型

在MySQL中,字符串可以容纳从纯文本到二进制数据(如图像或文件)的任何内容。可以通过使用LIKE运算符,正则表达式和全文搜索,根据模式匹配来比较和搜索字符串。

下表显示了MySQL中的字符串数据类型:

字符串类型描述
char固定长度的非二进制(字符)字符串
varchar可变长度的非二进制字符串
BINARY一个固定长度的二进制字符串
VARBINARY一个可变长度的二进制字符串
TINYBLOB一个非常小的BLOB(二进制大对象)
BLOB一个小的BLOB(二进制大对象)
MEDIUMBLOB一个中等大小的BLOB(二进制大对象)
LONGBLOB一个大的BLOB(二进制大对象)
TINYTEXT一个非常小的非二进制字符串
TEXT一个小的非二进制字符串
MEDIUMTEXT一个中等大小的非二进制字符串
LONGTEXT一个很大的非二进制字符串
ENUM枚举; 每个列值可以被分配一个枚举成员
SET集合; 每个列值可以分配零个或多个SET成员

MySQL日期和时间数据类型

MySQL提供日期和时间的类型以及日期和时间的组合。 此外,MySQL还支持时间戳数据类型,用于跟踪表的一行中的更改。如果只想存储没有日期和月份的年份数据,则可以使用YEAR数据类型。

下表说明了MySQL日期和时间数据类型:

字符串类型描述
DATEYYYY-MM-DD格式的日期值
TIMEhh:mm:ss格式的时间值
DATETIMEYYYY-MM-DD hh:mm:ss格式的日期和时间值
TIMESTAMPYYYY-MM-DD hh:mm:ss格式的时间戳记值
YEARYYYYYY格式的年值

MySQL空间数据类型

MySQL支持许多包含各种几何和地理值的空间数据类型,如下表所示:

字符串类型描述
GEOMETRY任何类型的空间值
POINT一个点(一对X-Y坐标)
LINESTRING曲线(一个或多个POINT值)
POLYGON多边形
GEOMETRYCOLLECTIONGEOMETRY值的集合
MULTILINESTRINGLINESTRING值的集合
MULTIPOINTPOINT值的集合
MULTIPOLYGONPOLYGON值的集合

JSON数据类型

MySQL 5.7.8版本支持原生JSON数据类型,可以更有效地存储和管理JSON文档。 本机JSON数据类型提供JSON文档的自动验证和最佳存储格式。

常用基本数据类型

字符串类型描述
INT整数值
DECIMAL小数值,精度高,存储金额
DATEYYYY-MM-DD
DATETIMEYYYY-MM-DD HH:MM:SS
TIMESTAMPYYYYMMDD HHMMSS CURRENT_TIMESTAMP
VARCHAR字符串
TEXT文本数据

主键

主键又称主关键字,主关键字(primary key)是表中的一个或多个字段,它的值用于唯一地标识表中的某一条记录

自增字段

每次插入新记录时,自动地创建主键字段的值。可以在表中创建一个 auto-increment 字段。MySQL 使用 AUTO_INCREMENT 关键字来执行 auto-increment 任务。默认地AUTO_INCREMENT 的开始值是 1,每条新记录递增 1。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

问渠科技

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值