sql语句基础
sql语句分为DDL,DML,DQL和DCL
DDL是数据定义语句:create,alter,drop
DML是数据操作语句:insert,update,delete
DQL是数据查询语句:select
DCL是数据控制语句:grant(修改用户权限),revoke(取消用户权限)
上面例举了一部分,首先明白MySQL是不区分大小写!!!
DDL数据定义
create:创建可以创建数据库,和数据表等对象
数据库创建:
create database 数据库名;
#判断数据库是否存在,不存在创建数据库,并指定字符集
create database if not exists 数据库名 character set 数据库字符集;
数据库表创建
create table 表名(
字段名1 字段类型1,
字段名2 字段类型2,
....
)charset = 字符集;
alter:更改数据库,数据表等对象
更改数据库字符集
alter database 数据库名 default character set 字符集名字;
更改表操作
#向表里添加字段
alter table 表名 add 字段名 字段类型 (first|after 字段名);
#修改表中字段的属性
alter table 表名 modfiy 字段名 属性 [默认值] ;
#修改字段
alter table 表名 change 老字段名 新字段名 新属性;
#删除一个列
alter table 表名 drop 字段名
更改数据库操作语句DML
向数据库增加数据 insert
insert into 表名 values(字段名1,字段名2,字段名3)#这个需要填写所有字段的
insert into 表名(字段名1,字段名2) values(字段名1,字段名2)#指定字段名插入数据
删除数据库数据 (两种方式)
delete from 表名 where 条件#可以不加条件为清空表中所有数据
#delete删除的时候如果id字段进行了自增的设置,id将不会重新开始,会重删除最大的id继续
truncate table 表名 #清空数据表,id会重0开始
修改数据库数据
update 表名 set 字段名=值1,字段名2=值2.... where 条件 #条件可加可不加
查询数据库数据DQL
select 查询的字段名 from 表名 where 条件 #单表查询
select *(通配符查询所有字段) from 表1 join 表2 on 表1=表2 where 条件 #两表链接查询 内连接
grant修改用户权限一般人用不到
grant 权限(select,insert,update) 数据库.表名 to "用户名"@"主机";
flush privileges;#刷新
show grant for 用户名;#查看权限