char(n) varchar(n) tinyint tinytext text mediumtext longtextchar(0-255)varchar(0-21844) // 63533

定长字符串 char()变长字符串 varchar(n) tinytext text mediumtext longtext(4GBtext)
-- char varchar tinytext text mediumtext longtext
-- 23767-1 21845-1 16383-1
-- gbk varchar(32766) utf8 varchar(21844) utf8mb4 varchar(16382)select 65535/2,65535/3,65535/4;-- 演示
create table t5(c1 char(5), /* 定长字符串,功能是:如果设置5,则插入数据不到被空格也要占用5字节 */c2 varchar(5), /* 变长字符串,如果设置5,最多插入5字符,如果插入2个字,则占用2个字符的字节数 */c3 tinytext,c4 mediumtext,c5 text,c6 longtext
)
insert into t5 value('a','b','c','d','e','f');
select * from t5;-- 建立表
create table user(sno char(5), /* 定长 */name varchar(3) /* 变长字符串 3个字符串不是3个字节 */
)
insert into user value('2022','李四六');
insert into user value('1','abc');
select name,char_length(name),length(name) from user;
select sno,char_length(sno),length(sno) from user;-- 数据类型 字符型(串)
show tables;
select user(),database(),now(),3*3,rand(),version(),sysdate();
select CURRENT_DATE(),curdate();-- 删除指定几个表
drop table if exists t1,t2,t3,t4,t5;/* 多行注释 */
-- 单行注释
-- 字符串类型的值需要添加单引号,数字类型值一般不需要加单引号
-- char 定长字符串 varchar(30) '' 变长字符串
-- uuid char(36) varchar(36)
-- String char(n) n(max=255) varchar(n) tinytext text mediumtext longtext(4GB)create table t1(s1 char(6), /* 6个字符 */s2 char(200),s3 char(255),s4 varchar(10000),s5 varchar(11383)
)
drop table if exists t1;create table t2(s1 char(6), /* 6个字符 最多是255 */s2 char(3) /* a */
)
insert t2 value('javaab','李si');
select * from t2;select character_length(s1),length(s1),character_length(s2),length(s2) from t2;-- 114688
create table t3(c char(5)
)
insert t3 value('d2a');
select * from t3;