Computer >> Máy Tính >  >> Lập trình >> MySQL

Cấp quyền cho người dùng để chỉ xem một dạng xem MySQL?

Để cấp cho người dùng quyền chỉ xem dạng xem MySQL, hãy sử dụng cú pháp dưới đây

GRANT SELECT ON yourDatabaseName.yourViewName TO ' yourUserName@'yourLocalHost';

Trước tiên, bạn cần hiển thị tất cả các tên dạng xem từ một bảng. Cú pháp như sau -

SHOW FULL TABLES IN yourDatabaseName WHERE TABLE_TYPE LIKE 'VIEW';

Bây giờ thực hiện cú pháp trên để hiển thị tất cả các chế độ xem từ cơ sở dữ liệu. Ở đây tôi đang sử dụng tên cơ sở dữ liệu ‘test’. Truy vấn như sau -

mysql> SHOW FULL TABLES IN test WHERE TABLE_TYPE LIKE 'VIEW';

Sau đây là kết quả -

+-------------------------------+------------+
| Tables_in_test                | Table_type |
+-------------------------------+------------+
| empidandempname_view          | VIEW       |
| empinfoview                   | VIEW       |
| lookuptable                   | VIEW       |
| view_student                  | VIEW       |
| viewemployeeidandemployeename | VIEW       |
+-------------------------------+------------+
5 rows in set (0.00 sec)

Hiển thị tất cả tên người dùng và máy chủ lưu trữ từ bảng MySQL.user. Truy vấn như sau -

mysql> select user,host from MySQL.user;

Sau đây là kết quả -

+------------------+-----------+
| user             | host      |
+------------------+-----------+
| Manish           | %         |
| User2            | %         |
| mysql.infoschema | %         |
| mysql.session    | %         |
| mysql.sys        | %         |
| root             | %         |
| Adam Smith       | localhost |
| User1            | localhost |
| am               | localhost |
+------------------+-----------+
9 rows in set (0.00 sec)

Cấp cho người dùng cũng như máy chủ. Bây giờ, hãy sử dụng cơ sở dữ liệu ‘test’ và chế độ xem là ‘viewemployeeidandemployeename’. Để cấp nó cho 'Adam Smith' @ 'localhost', sau đây là truy vấn -

mysql> GRANT SELECT ON test. viewemployeeidandemployeename TO ' Adam Smith'@'localhost';
Query OK, 0 rows affected (0.18 sec)