หากต้องการให้สิทธิ์ผู้ใช้ในการดูเฉพาะมุมมอง MySQL ให้ใช้ไวยากรณ์ด้านล่าง
GRANT เลือกบน yourDatabaseName.yourViewName TO ' yourUserName@'yourLocalHost';
ก่อนอื่นคุณต้องแสดงชื่อมุมมองทั้งหมดจากตาราง ไวยากรณ์มีดังนี้ −
แสดงตารางเต็มในชื่อฐานข้อมูลของคุณโดยที่ TABLE_TYPE LIKE 'VIEW';
ตอนนี้ใช้ไวยากรณ์ด้านบนเพื่อแสดงมุมมองทั้งหมดจากฐานข้อมูล ที่นี่ฉันใช้ชื่อฐานข้อมูล 'ทดสอบ' แบบสอบถามมีดังต่อไปนี้ −
mysql> แสดงตารางเต็มในการทดสอบโดยที่ TABLE_TYPE LIKE 'VIEW';
ต่อไปนี้เป็นผลลัพธ์ -
<ก่อนหน้า>+-------------------------------------+-----------+| Tables_in_test | Table_type |+-------------------------------+-----------+| empidandempname_view | ดู || empinfoview | ดู || lookuptable | ดู || view_student | ดู || viewemployeeidandemployeename | ดู |+-------------------------------------+-----------+5 แถว ในชุด (0.00 วินาที)แสดงชื่อผู้ใช้และโฮสต์ทั้งหมดจากตาราง MySQL.user แบบสอบถามมีดังต่อไปนี้ −
mysql> เลือกผู้ใช้, โฮสต์จาก MySQL.user;
ต่อไปนี้เป็นผลลัพธ์ -
<ก่อนหน้า>+--------------------------------------+| ผู้ใช้ | โฮสต์ |+-----------------------------------------------+| มานิช | % || ผู้ใช้2 | % || mysql.infoschema | % || mysql.session | % || mysql.sys | % || ราก | % || อดัม สมิธ | localhost || ผู้ใช้1 | localhost || น | localhost |+--------------------------+-----------+9 แถวในชุด (0.00 วินาที)ให้สิทธิ์ผู้ใช้และโฮสต์ ตอนนี้ใช้ฐานข้อมูล 'ทดสอบ' และมุมมองคือ 'viewemployeeidandemployeename' ในการมอบให้แก่ 'Adam Smith'@'localhost' ต่อไปนี้คือข้อความค้นหา −
mysql> GRANT SELECT ในการทดสอบ viewemployeeidandemployeename TO ' Adam Smith'@'localhost'; แบบสอบถามตกลง 0 แถวได้รับผลกระทบ (0.18 วินาที)