MySQL 数据类型介绍

MySQL 是一个广泛使用的关系型数据库管理系统,它支持多种数据类型,以满足不同的数据存储需求。理解这些数据类型对于有效设计数据库至关重要。本文将介绍 MySQL 中的主要数据类型,并通过代码示例加以说明。

1. 数值类型

MySQL 提供了多种数值类型,主要分为整型和浮点型。

  • 整型:整型数据用于存储整数,支持的类型有:

  • TINYINT:1 字节,范围是 -128 到 127 (有符号),0 到 255 (无符号)。

  • SMALLINT:2 字节,范围是 -32,768 到 32,767 (有符号),0 到 65,535 (无符号)。
  • MEDIUMINT:3 字节,范围是 -8,388,608 到 8,388,607 (有符号),0 到 16,777,215 (无符号)。
  • INTINTEGER:4 字节,范围是 -2,147,483,648 到 2,147,483,647 (有符号),0 到 4,294,967,295 (无符号)。
  • BIGINT:8 字节,范围是 -9,223,372,036,854,775,808 到 9,223,372,036,854,775,807 (有符号),0 到 18,446,744,073,709,551,615 (无符号)。

示例sql CREATE TABLE integers_example ( id INT NOT NULL, tiny_val TINYINT, small_val SMALLINT, medium_val MEDIUMINT, big_val BIGINT );

  • 浮点型:浮点型用于存储带小数的数值,支持的类型有:

  • FLOAT:单精度浮点数。

  • DOUBLE:双精度浮点数。
  • DECIMAL:精确的定点数,常用于财务计算。

示例sql CREATE TABLE float_example ( id INT NOT NULL, float_val FLOAT, double_val DOUBLE, decimal_val DECIMAL(10, 2) -- 10 位数字,其中 2 位小数 );

2. 字符串类型

字符串类型用于存储文本数据,主要分为几类:

  • CHAR(n):固定长度的字符串,长度为 n,最多可达 255 个字符。
  • VARCHAR(n):可变长度的字符串,长度可达 n,最多可达 65,535 个字符。
  • TEXT:长文本字符串,用于存储较大文本,最大长度为 65,535 个字符。
  • BLOB:二进制大对象,用于存储二进制数据,如图片、音频等。

示例sql CREATE TABLE string_example ( id INT NOT NULL, char_val CHAR(10), varchar_val VARCHAR(50), text_val TEXT, blob_val BLOB );

3. 日期与时间类型

MySQL 提供多种日期与时间类型,用于存储日期和时间数据:

  • DATE:日期,格式为 'YYYY-MM-DD'。
  • TIME:时间,格式为 'HH:MM:SS'。
  • DATETIME:日期和时间,格式为 'YYYY-MM-DD HH:MM:SS'。
  • TIMESTAMP:时间戳,代表自 1970-01-01 00:00:00 UTC 到某个时间的秒数。

示例sql CREATE TABLE datetime_example ( id INT NOT NULL, date_val DATE, time_val TIME, datetime_val DATETIME, timestamp_val TIMESTAMP );

4. 枚举与集合类型

  • ENUM:枚举类型,用于从定义好的值列表中选择一个值,最大可有 65,535 个值。
  • SET:集合类型,可以从定义好的多个值中选择零个或多个值,最大可有 64 个值。

示例sql CREATE TABLE enum_set_example ( id INT NOT NULL, status ENUM('active', 'inactive', 'deleted'), tags SET('tag1', 'tag2', 'tag3') );

总结

MySQL 数据类型丰富多样,合理选择合适的数据类型可以提高数据库的性能和数据的准确性。在设计数据库时,了解各种数据类型的特性,以及它们的存储效率和使用场景,将有助于数据库的管理和维护。希望本文能帮助你更好地理解 MySQL 数据类型。

点赞(0) 打赏

微信小程序

微信扫一扫体验

微信公众账号

微信扫一扫加关注

发表
评论
返回
顶部