mysql中的数据类型有三大类:数值类型、日期/时间类型、字符串类型。
1.数值类型
类型 大小(字节)
tinyint 1
smallint 2
mediumint 3
int 4
bigint 8
float 4
double 8
decimal 十进制数,decimal(5,2)表示总长度是5,小数位2位,能表示最大数是999.99
注:数值类型默认情况是有符号类型,要使用无符号需要改成unsigned
2.日期/时间类型
类型 表示形式
data yyyy-mm-dd 插入日期‘2017-04-11’ 单引号不可以少
time HH:MM:SS 插入时间 ‘20:52:59’
datatime yyyy-mm-dd HH:MM:SS 中间有空格隔开
3.字符串类型
类型 大小(字节)
char 默认1个字符,如果想改变长度可以用小括号 char(10),这个不灵活
varchar 必须定义最大长度,可变字符串 varchar(20);
text 存储65535个字符,一般用来存储较长的文字
blob 二进制数 存储图片
数据库的三种指令:
DDL(数据定义指令,只定义结构,例如创建数据库、数据表等)
DML(数据操纵指令,涉及添删改查,考虑记录)
DCL(数据控制指令,涉及权限)
alter表修改指令:
1.表名字修改
alter table [旧表名] rename to [新表名];
2.表字段类型修改
alter table [表名] modify [字段] [类型];
3.表字段名字修改
alter table [表名] change name [新字段名] [原字段类型];
注:修改字段名时,类型必须加上
4.表字段的删除
alter table [表名] drop column [字段名];
5.表字段的添加
alter table [表名] add(字段 类型,字段2 类型2...);
select记录输出指令:
1.模糊查询like
select * from [表名] where [字段] like '%字符'
注:%:一个或多个字符 _:一个字符
2.正则表达式
select * from [表名] where [字段] regexp '(.*字符)|(.*字符)';
3.查询表中多个字段记录
select [字段1],[字段2] from [表名];
3.字段重命名
select [字段] as [新字段] from [表名];
注:as 可以省略,这个是一次性的,如果想要永久要用上面的方法
4.记录去重
select distinct [字段] [表名];
5.null的判断
select * from [表名] where [字段] is null;
select * from [表名] where [字段] is not null;
6.输出一定数量的记录
select * from [表名] limit [数量];
注:输入的数量多大就是显示几条,从头开始显示
select * from [表名] limit [从哪里开始] [显示几条
]
注:这里序号是从0开始的
7.排序
select * from [表名] order by [字段] asc;//升序,不写asc默认升序
select * from [表名] order by [字段] desc;//降序
8.删除记录
delete from [表名];//删除全部记录,字段和表都保留
delete from [表名] where 条件;
9.修改记录
update [表名] set [字段]=值 where [字段]=值;