MySQL 数据类型

 1.数值类型

  • 整数类型

    • TINYINT:1字节整数,范围从-128到127 (有符号) 或 0到255 (无符号)。
    • SMALLINT:2字节整数,范围从-32768到32767 (有符号) 或 0到65535 (无符号)。
    • MEDIUMINT:3字节整数,范围从-8388608到8388607 (有符号) 或 0到16777215 (无符号)。
    • INTINTEGER:4字节整数,范围从-2147483648到2147483647 (有符号) 或 0到4294967295 (无符号)。
    • BIGINT:8字节整数,范围从-9223372036854775808到9223372036854775807 (有符号) 或 0到18446744073709551615 (无符号)。
  • 浮点数类型

    • FLOAT(M, D):单精度浮点数,M是总位数,D是小数点后位数。
    • DOUBLE(M, D):双精度浮点数,M是总位数,D是小数点后位数。
  • 定点数类型

    • DECIMAL(M, D):精确小数数值,M是总位数,D是小数点后位数。

2. 日期和时间类型

  • DATE:日期,格式为'YYYY-MM-DD'。
  • TIME:时间,格式为'HH:MM:SS'。
  • DATETIME:日期和时间组合,格式为'YYYY-MM-DD HH:MM:SS'。
  • TIMESTAMP:时间戳,与时区有关,通常用于记录修改时间。
  • YEAR:年份,格式为'YYYY'。

3. 字符串类型

  • CHAR(N):        固定长度字符串,最多255个字符。
  • VARCHAR(N):   可变长度字符串,最多65535个字符。
  • TEXT:              长文本数据,最多65535个字符。
  • TINYTEXT:       短文本数据,最多255个字符。
  • MEDIUMTEXT:   中等长度文本数据,最多16777215个字符。
  • LONGTEXT:       长文本数据,最多4294967295个字符。

char(45): 字符串长度45,长度固定,例如存"hello",实际存的是"hello000000000000000....",长度固定45。

varchar(45): 字符串最大长度45,例如存"hello",实际存的是"hello",实际存多少就占多少长度,一个字符占一个字节。

nvarchar(45): 字符串最大长度45,例如存"hello",实际存的是"hello",实际存多少就占多少长度,不能超过45,使用宽字符集,一个字符占两个字节。

4. 二进制类型

  • BLOB:二进制数据,最多65535字节。
  • TINYBLOB:小型二进制数据,最多255字节。
  • MEDIUMBLOB:中等大小二进制数据,最多16777215字节。
  • LONGBLOB:大型二进制数据,最多4294967295字节。

5. 特殊类型

  • ENUM('value1', 'value2', ...) :枚举类型,允许定义一组可能的值。
  • SET('value1', 'value2', ...) :集合类型,允许多个值的组合。

注意事项:

  • 数据类型的选择应根据数据的特性和存储需求进行合理的选择,以提高效率和节省存储空间。
  • 在定义表结构时,应根据实际情况选择合适的数据类型和长度,避免过度使用大容量类型。
  • MySQL还支持自定义数据类型、空间数据类型等,但这些不在常规使用范围内。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值