Mysql语句快速复习教程(全)

2019-01-04 13:06:07刘景俊

触发器

<code>SELECT * FROM employee; -- 日志表 CREATE TABLE test_log( id INT PRIMARY KEY AUTO_INCREMENT, content VARCHAR(100) ) -- 需求: 当向员工表插入一条记录时,希望mysql自动同时往日志表插入数据 -- 创建触发器(添加) CREATE TRIGGER tri_empAdd AFTER INSERT ON employee FOR EACH ROW -- 当往员工表插入一条记录时 INSERT INTO test_log(content) VALUES('员工表插入了一条记录'); -- 插入数据 INSERT INTO employee(id,empName,deptId) VALUES(7,'扎古斯',1); INSERT INTO employee(id,empName,deptId) VALUES(8,'扎古斯2',1); -- 创建触发器(修改) CREATE TRIGGER tri_empUpd AFTER UPDATE ON employee FOR EACH ROW -- 当往员工表修改一条记录时 INSERT INTO test_log(content) VALUES('员工表修改了一条记录'); -- 修改 UPDATE employee SET empName='eric' WHERE id=7; -- 创建触发器(删除) CREATE TRIGGER tri_empDel AFTER DELETE ON employee FOR EACH ROW -- 当往员工表删除一条记录时 INSERT INTO test_log(content) VALUES('员工表删除了一条记录'); -- 删除 DELETE FROM employee WHERE id=7; SELECT * FROM employee; SELECT * FROM test_log; </code>

mysql权限问题

<code> -- mysql数据库权限问题:root :拥有所有权限(可以干任何事情) -- 权限账户,只拥有部分权限(CURD)例如,只能操作某个数据库的某张表 -- 如何修改mysql的用户密码? -- password: md5加密函数(单向加密) SELECT PASSWORD('root'); -- *81F5E21E35407D884A6CD4A731AEBFB6AF209E1B -- mysql数据库,用户配置 : user表 USE mysql; SELECT * FROM USER; -- 修改密码 UPDATE USER SET PASSWORD=PASSWORD('123456') WHERE USER='root'; -- 分配权限账户(select insert delete update drop create all) GRANT SELECT ON day16.employee TO 'eric'@'localhost' IDENTIFIED BY '123456'; GRANT DELETE ON day16.employee TO 'eric'@'localhost' IDENTIFIED BY '123456'; </code>

备份和还原

<code>-备份 mysqldump -u root -p day17 > c:/back.sql -恢复 mysql -u root -p day17 < d:/back.sql </code>

您可能感兴趣的文章:

对MySql经常使用语句的全面总结(必看篇)MySQL一个语句查出各种整形占用字节数及最大最小值的实例细数MySQL中SQL语句的分类MySQL查询语句大全集锦最全的mysql查询语句整理mysql常用命令行操作语句查看当前mysql使用频繁的sql语句(详解)