-
修改字段
ALTER TABLE 表名 modify column 列名 类型(长度);
ALTER TABLE 表名 CHANGE 旧字段名 新字段名; -
删除字段
ALTER TABLE 表名 DROP 字段名 -
新增字段
ALTER TABLE 表名 ADD 字段名 字段类型(字段长度) DEFAULT 默认值 COMMENT ‘注释’; -
查看表数据结构
desc 表名;
show columns from 表名; -
查看建表语句
show create table 表名; -
查询字段长度
select length(xxx);
select char_length(xxx);
a)、length(): 单位是字节,utf8编码下,一个汉字三个字节,一个数字或字母一个字节。gbk编码下,一个汉字两个字节,一个数字或字母一个字节。
b)、char_length():单位为字符,不管汉字还是数字或者是字母都算是一个字符。
例:
select * from user where char_length(username) > 5;
查询user表中username大于5个字符的记录。
length()<>char_length(),可以用来检验是否含有中文字符。
------例查询username含有汉字的记录:
select * from user where length(username)<>char_length(username);
utf-8编码中判定某个字段为全英文,可以用length(字段) = char_length(字段)。
-
INSTR()函数,可用于模糊查询,替代传统的 like 方式,并且速度更快。
instr(field, str) ,第一个参数 field 是字段,第二个参数 str 是要查询的字符串。
数据库表:
查询有“小”字的:
查询“小”在name中的位置,没有返回0: