mysql 扩展数据类型_MySQL支持的数据类型

每一个常量、变量和参数都有数据类型,它用来指定一定的存储格式、约束和有效范围

MySQL提供了多种数据类型,主要包括数值类型(整数和浮点数)、字符串类型、日期和时间类型

整数类型:bit、bool、tinyint、smallint、mediumint、 int、bitint

浮点数类型:Float、Double、Decimal

字符串类型:Char、VarChar、Tiny Text、Text、Medium Text、Long Text、Tiny Blob、Blob、Medium Blob、Long Blob

日期类型:Date、DateTime、TimeStamp、Time、Year

其他数据类型:Binary、VarBinary、Enum、Set、Geometry、Point、MultiPoint、LineString、MultiLineString、Polygon、GeometryCollection等

一、数据类型和长度

MySQL的数值类型整数类型字节最小值最大值

tinyint10255

smallint2无符号0,有符号-3276865535(2^16-1),有符号32767(2^15-1

mediumint3无符号0,有符号-2^23,无符号2^24-1,有符号2^23-1

int、integer4无符号0,有符号-2^31-1无符号2^32-1,有符号2^31-1

bitint8无符号0,有符号-2^63无符号2^64-1,有符号2^63 -1

Bit1无符号0,,有符号-128无符号255,有符号127

Bool1无符号0,,有符号-128无符号255,有符号127

Float(M,D)4如果D<=24则为默认的FLOAT,如果D>24则会自动被转换为DOUBLE型

Double(M,D)8

Decimal(M,D)M+1或M+2

Date3以YYYY-MM-DD的格式显示,比如:2009-07-19

Date Time8以YYYY-MM-DD HH:MM:SS的格式显示,比如:2009-07-19 11:22:30

TimeStamp4以YYYY-MM-DD的格式显示,比如:2009-07-19

Time3以HH:MM:SS的格式显示。比如:11:22:30

Year1以YYYY的格式显示。比如:2009

Char(M)

VarChar(M)

Binary(M)

VarBinary(M)

Tiny TextMax:255

TextMax:64K

Medium TextMax:16M

Long TextMax:4G

TinyBlobMax:255

BlobMax:64K

MediumBlobMax:16M

LongBlobMax:4G

Enum1或2最大可达65535个不同的枚举值

Set可达8最大可达64个不同的值说明:

二、数据类型选择原则

1、在指定数据类型的时候一般是采用从小原则,这样会对MYSQL在运行效率上提高很大,尤其是数据量大的情况下

2、表的设计要结合业务,要考虑业务会有哪些查询需求,或者统计需求,让业务的查询尽量只通过查询一个表就能满足需求,而不要关联多个表才能得到结果,单表查询的效率要高于多表关联查询的效率

3、数据表和字段的命名最好能见名知意,每个字段和表都要有注释,这样方便DBA后期的维护

4、数据库的设计要留有可扩展性,要考虑到后期业务的发展

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值