1、SQL分类
- DDL数据定义语言,用来维护存储数据的结构
代表指令: create, drop, alter - DML数据操纵语言,用来对数据进行操作
代表指令: insert,delete,update- DML中又单独分了一个DQL>数据查询语言,
代表指令: select
- DML中又单独分了一个DQL>数据查询语言,
- DCL数据控制语言,主要负责权限管理理和事务
代表指令: grant,revoke,commit
2、用户管理
-
新建用户:
create user name identified by 'Hannah_h';
-
更改密码:
set password for Hannah_h=password('fdddfd');
-
权限管理
- 1、查看Hannah_h用户权限
show grants for Hannah_h;
- 2、给Hannah_h用户db_(Hannah_h)数据库的所有权限
grant select on db_(Hannah_h).* to Hannah_h;
- 3、上一条的反操作,去除权限;
revoke select on db_(Hannah_h).* to Hannah_h;
- 1、查看Hannah_h用户权限
3、对库操作
-
创建数据库
create databse student1;
-
创建数据库并设置编码格式
create database student2 character set gbk;
-
更改字符集为utf-8
alter database mydb2 set utf8;
-
设置校验规则
create database student3 character set gbk collate gbk_chinese_ci;
-
查看所有数据库
show databases;
-
查看已创建的数据库
show create database student1;
-
删除数据库
drop database student1;
-
查看数据库
select database();
-
使用数据库
use student1;
4、对表操作
-
创建表
create table 表名称(项名称 类型(长度),项名称 类型(长度));
-
查看表
1、查看数据库中的所有表:
show tables;
2、查看表结构:desc 表名;
或show columns in 表名;
3、查看表创建细节:show create table 表名;
-
删除表
drop table 表名;
-
复制表
create table 表名2 select* from 表名1;
-
修改表
1、对表重命名
rename table 旧表名 to 新表名;
或alter table 旧表名rename 新表名;
2、添加列
alter table 表名 add 列名 类型(长度) ;
3、修改某列类型长度
alter table 表名 modify 列名 类型(长度);
4、修改表列名
alter table 表名 change 旧列名 新列名 类型(长度);
5、删除某列
alter table 表名 drop 列名;
5、对表内容操作
-
插入数据
insert into 表名称(列名1,列名2,列名3..) values(值1,值2,值3..);
示例:
insert into people(id, name, gender,age) values (1, '小燕子', '女',18);
注意:
列名与列值要一一对应;
值不要超出列定义的长度;
值如果是字符串或者日期需要加单引号;
主键id是自增的列,可以不用写。 -
更新指定数据
1、更新整列
update 表名称 set 字段名=值,字段名=值...;
2、更新指定列
update 表名 set 字段名=值,字段名=值... where id=?;
-
删除数据
delete from 表名;
delete from 表名 where 条件;
truncate table 表名;
待更新中。。。