4_MySQL 的数据类型

数据类型是定义列中可以存储什么类型的数据以及该数据实际怎样存储的基本规则

数据类型限制存储在数据列列中的数据


字符串数据类型

最常用的数据类型是串数据类型。它们存储串,如名字、地址、电 话号码、邮政编码等

不管使用何种形式的串数据类型,串值都必须括在引号内

定长串:char

  • 接受长度固定的字符串,其长度是在创建表时指定的
  • 定长列不允许存储多于指定长度字符的数据
  • 指定长度后,就会分配固定的存储空间用于存放数据
char(7) 不管实际插入多少字符,它都会占用7个字符位置

变长串: varchar

存储可变长度的字符串 varchar(7) 如果实际插入4个字符, 那么它只占 4 个字符位置,当然插入的数据长度不能超过 7 个字符

注意:

既然变长数据类型这样灵活,为什么还要使用定长数据类型?

回答:因为性能,MySQL处理定长列远比处理变长列快得多。

变长文本类型存储:Text

小结

在这里插入图片描述


数值类型

数值数据类型存储数值

MySQL 支持多种数值数据类型,每种存储的数值具有不同的取值范围

支持的取值范围越 大,所需存储空间越多 与字符串不一样,数值不应该括在引号内

decimal(5, 2) 表示数值总共5位, 小数占2位

tinyint 1字节(8位) 0-255。-128,127 

int 4字节。 -21亿,21亿。0-42亿

float.

小结

在这里插入图片描述


有符号或无符号

所有数值数据类型(除BIT和BOOLEAN外)都可以有符号或无符号

  • 有符号数值列可以存储正或负的数值
  • 无符号数值列只能存储正数。
  • 默认情况为有符号,但如果你知道自己不需要存储负值,可以使用 UNSIGNED 关键字

注意:

如果将邮政编码类似于01234存储为数值类型,则保存的将是数值1234,此时需要使用字符串类型 手机号应该用什么进行存储呢?
varchar

日期和时间类型

MySQL 使用专门的数据类型来存储 日期 和 时间值

注意:

datetime 8字节1000-01-01 00:00:00 ~ 9999-12-31 23:59:59

小结

在这里插入图片描述


二进制数据类型

二进制数据类型可存储任何数据(甚至包括二进制信息),如图像、多媒体、字处理文档等

小结

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值