Mysql学习笔记(4):数据类型

这篇博客介绍了MySQL中的数据类型,重点讨论了数值类型,包括整数类型如mediumint、int和bigint,以及浮点数和定点数类型如DECIMAL和FLOAT。此外,还提到了日期/时间类型和字符串类型,如CHAR、VARCHAR、BLOB、TEXT以及ENUM枚举类型。对于每种类型,博主详细阐述了它们的特性和使用注意事项。
摘要由CSDN通过智能技术生成

Mysql支持的数据类型主要有:数值数据类型、日期/时间类型、字符串类型。


数值类型

1、整数类型

类型 说明 存储(字节) 取值范围
tinyint 很小整数 1

无符号(unsigned): 0~255

有符号(signed): -128~127

255=2^8-1


smallint


小整数


2

无符号(unsigned):  0~65535

有符号(signed): -32768~32767

65535=2^16-1


mediumint


中等


3

无符号(unsigned):  0~2^24-1

有符号(signed): -2^23-1~2^23-1

16777215 =  2^24-1


int(integer)


普通


4

无符号(unsigned):  0~ 2^32-1

有符号(signed): - 2^31-1~ 2^31-1

4294967295 = 2^32-1


bigint


大整数


8

无符号(unsigned):  0~ 2^64-1

有符号(signed): - 2^63-1~ 2^63-1

18446744073709551615=2^64-1

下面介绍常用的整型:

1.1 int(integer)类型
CREATE TABLE tab_int(
	t1 INT,
	t2 INT UNSIGNED 
);

  • 上面创建了tab_int表,表中字段一个是有符号的int类型t1和无符号的Int类型t2.
  • 几种整型类型都是有最大最小值的,如果插入的数据超过了这个临界值,就会使用这个临界值填充。

关于表中int类型后面的数字,这个就得详细讲解一下了.

关于int(#)

int后边的(#)内的数字#int类型的数字范围无关,不会因为里边是11或者4,就表示11位或者4位的int型数据,这个#字只表示数字显示出来的宽度。数据显示的宽度有俩种情况:

  1. 如果没有在数据库设置0填充,那么其实不管设置显示的宽度为多少,显示就是数据库内的数据,不会在数据左侧自动填充0来补足显示的宽度;
  2. 设置了0填充,在查询结果时候显示出来的数据宽度不够设置的显示宽度时候,就会在数据左侧填充0直到达到设置的显示宽度,但是有一个问题就是设置了0填充,数据会自动变成unsigned类型的;如果数据宽度超过设置的显示宽度,也不会将数据只显示指定的显示宽度。
  3. 字段默认是不使用0填充的。如果使用的话使用 zerofill 关键字。

----------

2. 浮点数和定点数类型

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值