mysql中char(M)中M的长度,指定字节?还是字符?
那varchar(M)又是怎样的?
我自学时看视频糊里糊涂(视频讲的。。好像讲了又好像没讲),百度上的答案好多重复,又没有回答出重点。我就只好自己用笨方法,不断的测试。最后总结出来,
CHAR(M) 的M是字符长度。最长为255个字符。
重点:一个多字节字符算作一个单字符,如1个汉字、1个数字,都被当成1个字符。
举个例子:
CREATE TABLE test_char (
c1 CHAR(5)
) ;
INSERT INTO test_char(c1) VALUES ( 'hello' ) ;
INSERT INTO test_char(c1) VALUES ( '12345' ) ;
INSERT INTO test_char(c1) VALUES ( '吃花椒喵酱' ) ;
INSERT INTO test_char(c1) VALUES ( 'C花椒喵酱' ) ;
SELECT CHAR_LENGTH(c1) "字符数" , LENGTH(c1) "字节数" FROM test_char ;
#统计字符数、字节数
结果为: