首页 > 编程知识 正文

史上最全的mysql基础教程,MySQL 数据类型

时间:2023-05-04 22:51:56 阅读:34290 作者:1337

前言:

要了解数据库,必须了解支持的数据类型。 MySQL支持许多字段类型,其中有很多常用的字段类型。 上一篇文章也介绍了int和varchar类型的使用方法,但没有全面介绍字段类型。 本文涵盖了字段类型,并介绍了常见字段类型的使用方法。

常用的字段类型大致分为3358www.Sina.com/、数值类型、3358www.Sina.com/三种,按分类顺序介绍。

1 .数值类型数值类型的大分类又可分为字符串类型日期时间类型整型三种。

整数类型主要用于存储整数值,主要有以下字段类型:

整数类型常用于tinyint、int、bigint等。 缺省值是有符号的,但如果只存储无符号值,则可以增加无符号属性。

int(m )中的m表示最大显示宽度,int )并不表示无法存储数值10。 无论显示宽度设置为多少个字符,int都将占用4个字节。 也就是说,int )5)和int ) 10 )可以存储的范围相同。

字节数越小,占用空间越小。 因此,必须根据最小化存储的原则,尽量选择合适的整数。 例如,可以使用tinyint保存一些状态值和人的年龄。 主键列,没有负数。 建议未指定或未指定。 字段的数值预计将超过42亿,使用bigint型。

浮点型主要有float、double两种,浮点型在数据库中存储近似值,例如float (6,3 ),插入一个数123.45678后,实际的数据库中存储了123.457,但总个数浮点和双精度平时很少使用。

定点型字段类型是DECIMAL之一,主要用于存储要求精度的小数。

DECIMAL是从MySQL 5.1引入的,列的声明语法是decimal(m,d )。 NUMERIC与DECIMAL同义,如果字段类型定义为NUMERIC,则自动转换为DECIMAL。

声明语法decimal(m,d )参数的值范围如下:

m是最大位数(精度),范围为1到65。 不,默认值为10。 d是小数点右侧的位数(小数点后的位数)。 范围为0到30,不能大于m。 请不要指定。 默认值为0。 例如,字段salary decimal (5,2 )可以存储具有5位数字和2位小数的任何值,因此可以存储在salary列中的值的范围从-999.99到999.99。

2 .字符串型字符串型也经常使用。 常用的几种类型如下表所示。

其中char和varchar是最常用的。 char类型为固定长度,MySQL始终根据定义的字符串长度分配足够的空间。 保存char值时,在右侧填充空格,使其达到指定长度,获得char值后删除末尾的空格。 varchar类型用于存储可变长度字符串,即使字符未达到定义的位数,以后也不会添加空格。

Char(m )和varchar(M ) m表示要存储的最大字符数,单个字符、数字、中文等都占用一个字符。 char适用于存储短字符串或所有值都接近相同长度的情况。 例如,char最适合存储密码的MD5值。 因为这是固定长度的值。 如果字符串长或保存的字符串长度不同,varchar更适合。

定义字段的最大长度时,必须根据需要分配。 提前预测,如果可以使用varchar类型,则不要使用文本类型。 除非需要存储长文本数据,否则考虑使用文本类型。

BLOB类型主要用于存储二进制大对象,并且可以存储诸如图像、音频视频等的文件。 虽然日常很少使用,但在存储二进制字符串时请考虑使用。

3 .日期和时间类型MySQL支持的日期和时间类型为浮点型定点型YEAR,http://www.Sina.com

如果涉及日期和时间字段类型的选择,则可以根据存储需求选择适当的类型。

您可以根据存储需求确定如何选择两种类型: DATETIME和TIMESTAMP。 例如,如果要求存储范围很大,建议使用DATETIME;如果只存储当前时间戳,请使用TIMESTAMP类型。 但是,TIMESTAMP字段中的数据取决于系统的时区,而DATETIME字段中的数据保持不变。 一般来说,DATETIME的使用范围很广。

TIME

本文主要介绍MySQL中常用的字段类型。 平时使用的字段类型几乎都在这里。 用思维导图总结,如下所示。

版权声明:该文观点仅代表作者本人。处理文章:请发送邮件至 三1五14八八95#扣扣.com 举报,一经查实,本站将立刻删除。