Mysql语言组成:
1.数据定义语言(DDL)
创建数据库:create database 数据库名字;
删除数据库:drop database 数据库名字;
使用数据库:use 数据库名
使用数据表:use 数据表名字
创建数据表:create table if not exist 数据表名字(`id` int(11) not null auto_increment,`pid` int(11) not null unique,primary key(`id`,`pid`),key 外键表名 (`pid`),constraint 外键表名 foreign key(`pid) references `关联表名` (`关联字段`)on delete restarict on update restarict)engine=InnoDb detault carset=utf8;(auto_increment设置自动增长。unique约束唯一性,可以设置多个,primary key设置主键 。)
删除数据表:drop table 数据表名字;
修改数据表:alter table 数据表名 add sex varchar(255);添加字段
alter table 数据表名 drop sex;删除数据表的字段
alter table 数据表名 modify 字段 varchar(255);修改指定表的字段
alter table 数据表名 change 老字段 新字段 varchar(255);修改字段名
alter table 数据表名 rename to 新数据表名;数据表表重命名
alter table 数据表名 alter 属性 set default ' ';设置默认属性
添加外键:alter table 表A add constraint 外键名 foreign key(表A外键字段) references 表B(表B主键) on delete reference_option
如果要通过外键关联进行更新和删除需要做如下设置
[ON DELETE reference_option]
[ON UPDATE reference_option]
reference_option:RESTRICT(不允许操作) | CASCADE(关联操作) | SET NULL | NO ACTION
删除外键:alter table 表名 drop freign key 外键名
2.数据库查询语言(DQL)
查找:select * from 表名 where 条件;
3.数据库操纵语言(DML)
删除:delete from 表名 where 条件;
修改:update 表名 set 字段='值' where 条件;
增加: insert into 表名(字段名,字段名) values(value1,value2);
4.数据控制语言(DCL)
1.创建
语法:
CREATE USER 用户名@地址 IDENTIFIED BY ‘密码’;
例:
create user user@localhost identified by '111';
2.用户授权
语法:
GRANT 权限1, … , 权限n ON 数据库.* TO 用户名;
例:
grant create,alter,drop,insert,update,delete,select on table.* to user@localhost;
3.删除授权
语法:
REVOKE权限1, … , 权限n ON 数据库.* FORM 用户名;
例:
revoke create,alter,drop on table.* to testuser1@localhost;
4.查看用户权限
语法:
SHOW GRANTS FOR 用户名;
例:
show grants for testuser1@localhost;
5.删除用户
语法:
DROP USER 用户名;
例:
drop user testuser1@localhost;
6.修改用户密码
语法:
update user set password=password(‘新密码’) where user=‘用户’ and host=’主机ip’;修改
flush privileges;刷新权限
例:
update user set password=password('1234') where user='user2' and host=’localhost’;
flush privileges;