mysql_ init数据类型_Mysql数据类型

本文介绍了Mysql中各种数据类型,包括数值类型(如整型、浮点型、位类型)、字符串类型(如char、varchar、text系列)、时间类型(最常用的是datetime)以及枚举类型和集合类型。强调了数据类型的适用场景和特性,如decimal的精准存储,varchar的节省空间,datetime用于记录时间等。
摘要由CSDN通过智能技术生成

数据类型

1. 数值类型

整形:一般来说默认使用int就够用,没必要指定宽度

浮点型:定点数类型 DEC等同于DECIMAL

位类型(了解):BIT(M)可以用来存放多位二进制数,M范围从1~64,如果不写默认为1位。

整型:tinyinit int bigint

小数:

float :在位数比较短的情况下不精准

double :在位数比较长的情况下不精准

0.000001230123123123

存成:0.000001230000

decimal:(如果用小数,则用推荐使用decimal)

精准

内部原理是以字符串形式去存

2. 字符串

char(10):简单粗暴,浪费空间,存取速度快

root存成root000000

varchar:精准,节省空间,存取速度慢

sql优化:创建表时,定长的类型往前放,变长的往后放

比如性别 比如地址或描述信息

>255个字符,超了就把文件路径存放到数据库中。

比如图片,视频等找一个文件服务器,数据库中只存路径或url。

#char类型:定长,简单粗暴,浪费空间,存取速度快

字符长度范围:0-255(一个中文是一个字符,是utf8编码的3个字节)

存储:

存储char类型的值时,会往右填充空格来满足长度

例如:指定长度为10,存>10个字符则报错,存<10个字符则用空格填充直到凑够10个字符存储

检索:

在检索或者说查询时,查出的结果会自动删除尾部的空格,除非我们打开pad_char_to_full_length SQL模式(SET sql_mode = 'PAD_CHAR_TO_FULL_LENGTH';)

#其他字符串系列(效率:char>varchar>text)

TEXT系列 TINYTEXT TEXT MEDIUMTEXT LONGTEXT

BLOB 系列 TINYBLOB BLOB MEDIUMBLOB LONGBLOB

BINARY系列 BINARY VARBINARY

text:text数据类型用于保存变长的大字符串,可以组多到65535 (2**16 − 1)个字符。

mediumtext:A TEXT column with a maximum length of 16,777,215 (2**24 − 1) characters.

longtext:A TEXT column with a maximum length of 4,294,967,295 or 4GB (2**32 − 1) characters.

3. 时间类型

最常用:datetime

作用:存储用户注册时间,文章发布时间,员工入职时间,出生时间,过期时间等

4.枚举类型与集合类型

字段的值只能在给定范围中选择,如单选框,多选框

enum 单选只能在给定的范围内选一个值,如性别 sex 男male/女female

set 多选 在给定的范围内可以选择一个或一个以上的值(爱好1,爱好2,爱好3...)

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值