mysql提供了()种整型_数据库的数据类型

型名

说明

char

定长字符串

varchar

可变长字符串

tinyblob

非常小的blob(二进制大对象)

blob

小blob

mediumblob

中等的blob

longblob

大blob

tinytext

非常小的文本串

text

小文本串

mediumtext

中等文本串

longtext

大文本串

enum

枚举;列可赋予某个枚举成员

set

集合;列可赋予多个集合成员

表4:字符串列类型

下表给出了mysql 定义串值列的类型,以及每种类型的最大尺寸和存储需求。对于可变长的列类

型,各行的值所占的存储量是不同的,这取决于实际存放在列中的值的长度。这个长度在表中用l 表示。

类型说明

最大尺寸

存储需求

char( m)

m 字节

m 字节

varchar(m)

m 字节

l + 1字节

tinyblob, tinytext

28- 1字节

l + 1字节

blob, text

216 - 1 字节

l + 2字节

mediumblob, mediumtext

224- 1字节

l + 3字节

longblob, longtext

232- 1字节

l + 4字节

enum("value1", "value2", ...)

65535 个成员

1 或2字节

set ("value1", "value2", ...)

64个成员

1、2、3、4 或8字节

表5:串列类型最大尺寸及存储需求

l 以外所需的额外字节为存放该值的长度所需的字节数。mysql 通过存储值的内容及其长度来处理

可变长度的值。这些额外的字节是无符号整数。请注意,可变长类型的最大长度、此类型所需的额外字节

数以及占用相同字节数的无符号整数之间的对应关系。例如,mediumblob 值可能最多224 - 1字节长并需

要3 个字节记录其结果。3 个字节的整数类型mediumint 的最大无符号值为224 - 1。这并非偶然。

2.3日期时间列类型

mysql 提供了几种时间值的列类型,它们分别是: date、datetime、time、timestamp和year。下

表给出了mysql 为定义存储日期和时间值所提供的这些类型,并给出了每种类型的合法取值范围。

类型名

说明

date

"yyyy-mm-dd"格式表示的日期值

time

"hh:mm:ss"格式表示的时间值

datetime

"yyyy-mm-dd hh:mm:ss"格式

timestamp

"yyyymmddhhmmss"格式表示的时间戳值

year

"yyyy"格式的年份值

表6:日期时间列类型

类型名

取值范围

存储需求

date

"1000-01-01"到"9999-12-31"

3字节

time

"-838:59:59"到"838:59:59"

3字节

datetime

"1000-01-01 00:00:00" 到"9999-12-31 23:59:59"

8字节

timestamp

19700101000000 到2037 年的某个时刻

4字节

year

1901 到2155

1字节

表7: 日前时间列类型的取值范围和存储需求

下面举个例子:

create table student

(

name varchar(20) not null,

chinese tinyint(3),

maths tinyint(3),

english tinyint(3),

birthday date

)

这个例子创建一个student表,这个表中有name字段,字符类型列,不

允许null(空值)。有chinese、maths和english三个整数类型列。还有个

birthday日期类型列。

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值