MySQL权限篇之CREATE VIEW

CREATE VIEW,创建视图。

该权限,仅仅能够创建视图,能够alter view,也不能drop view。

创建视图的时候,用户必须在基表上有select权限,否则创建失败。

mysql> grant create view on test.* to 'ut01'@'%';
Query OK, 0 rows affected (0.06 sec)


mysql> show grants for 'ut01'@'%';
+---------------------------------------------+
| Grants for ut01@%                           |
+---------------------------------------------+
| GRANT USAGE ON *.* TO 'ut01'@'%'            |
| GRANT CREATE VIEW ON `test`.* TO 'ut01'@'%' |
+---------------------------------------------+
2 rows in set (0.00 sec)


mysql> grant select on test.t1 to 'ut01'@'%';
Query OK, 0 rows affected (0.07 sec)


mysql> 


C:\Users\Administrator>mysql -uut01
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 20
Server version: 5.7.11-log MySQL Community Server (GPL)


Copyright (c) 2000, 2016, Oracle and/or its affiliates. All rights reserved.


Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.


Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.


mysql> use test
Database changed
mysql> create view v_t1 as select category,num from t1;
ERROR 1054 (42S22): Unknown column 'category' in 'field list'
mysql> create view v_t1 as select id from t1;
Query OK, 0 rows affected (0.20 sec)


mysql> show tables;
+----------------+
| Tables_in_test |
+----------------+
| t1             |
| t2             |
| t_area         |
| t_area_1       |
| v_t1           |
+----------------+
5 rows in set (0.00 sec)


mysql> alter view v_t1 as select 1 from t1;
ERROR 1142 (42000): DROP command denied to user 'ut01'@'localhost' for table 'v_t1'
mysql> drop view v_t1;
ERROR 1142 (42000): DROP command denied to user 'ut01'@'localhost' for table 'v_t1'
mysql> 


无法修改和删除视图。

mysql> grant select on test.t1 to 'ut01'@'%';
Query OK, 0 rows affected (0.07 sec)

你可能感兴趣的:(MySQL数据库-权限)