- 论坛徽章:
- 0
|
试了把
5.0之前,varchar(100)的100指的是字节数,因此只能存33个中文字。
5.0之后,varchar(100)的100指的是字符数,也就是能存100个中文字。
我的mysql5.1 建了一个varchar(10)的字段,按照道理说可以存10个中文字符,但我存了6个,就会说数据太长,5个就可以
mysql> show create table t2\G
*************************** 1. row **********************
Table: t2
Create Table: CREATE TABLE `t2` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`name` varchar(10) NOT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=utf8
1 row in set (0.02 sec)
mysql> insert into t2 (`name`) values ('哈哈哈哈哈哈');
ERROR 1406 (22001): Data too long for column 'name' at row 1
mysql> insert into t2 (`name`) values ('哈哈哈哈哈');
Query OK, 1 row affected (0.05 sec) |
|