一、表的操作
1.创建表
use 数据库名;
create table if not exists 表名(属性名1 类型1,属性名2 类型2,......) [character set 字符集名] [collate utf8_general_ci/utf8_bin] [engine 搜索引擎名];创建表并设置表的字符集、校验规则和搜索引擎。
2.修改表名
alter table 原表名 rename to 新表名;
3.描述表
desc 表名;
4.修改表
4.1 添加列名
alter table 表名 add 属性名 属性类型;
4.2 删除列名
alter table 表名 drop 列名;
4.3 修改列的类型
alter table 表名 modify 列名 新类型;
4.4 修改列的列名(***)
alter table 表名 change 原列名 新列名 新列名的类型;
5.删除表
drop table 表名;
二、数据类型
1.数值类型
int系列:tinyint smallint mediumint int bigint
浮点数:float(m,d) double(m,d) decimal(m,d) m表示所有数共占的位数 d表示小数占的位数 精度:decimal>double>float
bit 位类型,默认是1,1~64
2.文本、二进制类型
char(size) 固定长度大小,最大是255.
varchar(size) 可变长度大小,最大长度是65535.
3.时间类型
date yyyy-mm-dd日期类型,3个字节
datetime yyyy-mm-dd hh-mm-ss日期类型,4个字节
timestamp 4字节,从1970年1月1日0时0分1秒开始
4.集合类型
set和enum:它们的值在创建表的时候就确定了,enum是单选,set是多选。在插入数值时,enum只能取定义中的一个值,而set可以取定义时的多个值。
find_in_set(sub,str_lis);在str_lis中查找sub,结果返回的是下标(从1开始);没有找到,返回0.