在MySQL中char代表几个字节_定义数据库列是,CHAR(n),n指的是字节数还是字符个数...

原帖由 bell6248 于 10-10-22 10:48 发表 thread-1360372-1-1.html

是字符个数

哈哈,你看走眼了

默认是用字节数

--不加byte或者char

SCOTT@lastwinner.lw> create table del01(u char(5));

表已创建。

已用时间:  00: 00: 00.10

SCOTT@lastwinner.lw> desc del01

名称                                      是否为空? 类型

----------------------------------------- -------- --------------------------

U                                                  CHAR(5)

SCOTT@lastwinner.lw> insert into del01 values ('12345');

已创建 1 行。

已用时间:  00: 00: 00.03

SCOTT@lastwinner.lw> insert into del01 values ('123啊');

已创建 1 行。

已用时间:  00: 00: 00.00

SCOTT@lastwinner.lw> insert into del01 values ('123啊啊');

insert into del01 values ('123啊啊')

*

第 1 行出现错误:

ORA-12899: 列 "SCOTT"."DEL01"."U" 的值太大 (实际值: 7, 最大值: 5)

已用时间:  00: 00: 00.04

/*

*  加上char看看有什么变化

*/

SCOTT@lastwinner.lw> create table del02(u char(5 char));

表已创建。

已用时间:  00: 00: 00.00

SCOTT@lastwinner.lw> desc del02

名称                                      是否为空? 类型

----------------------------------------- -------- --------------------------

U                                                  CHAR(5 CHAR)

SCOTT@lastwinner.lw> insert into del02 values ('123啊');

已创建 1 行。

已用时间:  00: 00: 00.00

SCOTT@lastwinner.lw> insert into del02 values ('123啊啊');

已创建 1 行。

已用时间:  00: 00: 00.01

SCOTT@lastwinner.lw> insert into del02 values ('123456');

insert into del02 values ('123456')

*

第 1 行出现错误:

ORA-12899: 列 "SCOTT"."DEL02"."U" 的值太大 (实际值: 6, 最大值: 5)

已用时间:  00: 00: 00.01

SCOTT@lastwinner.lw> drop table del01

2  /

表已删除。

已用时间:  00: 00: 00.03

SCOTT@lastwinner.lw> drop table del02;

表已删除。

已用时间:  00: 00: 00.00

/*

*   看看用byte又是怎么样?

*/

SCOTT@lastwinner.lw> create table del03(u char(5 byte));

表已创建。

已用时间:  00: 00: 00.01

SCOTT@GADB.cssga1> desc del03

名称                                      是否为空? 类型

----------------------------------------- -------- ---------------------------

U                                                  CHAR(5)

/*

*  无需多看了,跟不加byte的效果一样

*/

SCOTT@lastwinner.lw> drop table del03;

表已删除。

已用时间:  00: 00: 00.00

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值