ความแตกต่างที่สำคัญระหว่างการให้สิทธิ์และการเพิกถอนคือการให้สิทธิ์แก่ผู้ใช้ ในขณะที่การเพิกถอนจะนำสิทธิ์ที่มอบคืนให้กับผู้ใช้
SQL ให้ระดับการอนุญาตที่แตกต่างกันสำหรับผู้ใช้ ให้และเพิกถอนเป็นสองคำสั่งดังกล่าว คำสั่ง Grant อนุญาตให้ผู้ใช้อนุญาตในขณะที่คำสั่งเพิกถอนอนุญาตให้ถอนระดับการอนุญาตจากผู้ใช้
ทุนคืออะไร
DBMS เป็นซอฟต์แวร์ระบบสำหรับสร้างและจัดการฐานข้อมูล นอกจากนี้ SQL หรือ Structured Query Language เป็นภาษาที่ใช้จัดการฐานข้อมูล จึงสามารถแทรก แก้ไข และดึงข้อมูลในฐานข้อมูลได้ นอกจากนี้ยังมีหมวดหมู่ต่างๆ ใน SQL เช่น DDL, DML และ DCL Data Definition Language (DDL) อนุญาตให้สร้างและปรับโครงสร้างอ็อบเจ็กต์ฐานข้อมูล คำสั่ง create, alter, drop เป็นคำสั่ง DDL ภาษาการจัดการข้อมูล (DML) ช่วยให้ข้อมูลการดำเนินงานในฐานข้อมูล การเลือก แทรก อัปเดต และลบเป็นตัวอย่างบางส่วนของคำสั่ง DML ภาษาควบคุมข้อมูล (DCL) ช่วยให้ควบคุมการเข้าถึงข้อมูลภายในฐานข้อมูล การให้สิทธิ์และการเพิกถอนเป็นคำสั่ง DCL สองคำสั่งที่ให้การรักษาความปลอดภัยของฐานข้อมูล
รูปที่ 01: ฐานข้อมูล SQL
คำสั่งให้สิทธิ์ให้การเข้าถึงหรือสิทธิพิเศษบนวัตถุฐานข้อมูลสำหรับผู้ใช้ ไวยากรณ์มีดังนี้
grantprivilege_name บน object_name
ถึง {ชื่อผู้ใช้} [ตัวเลือกการอนุญาต];
ตามที่กล่าวข้างต้น privilege_name คือสิทธิ์ในการเข้าถึงหรือสิทธิพิเศษที่มอบให้กับผู้ใช้ object_name คือชื่อของอ็อบเจ็กต์ฐานข้อมูล อาจเป็นตาราง มุมมอง ฯลฯ ชื่อผู้ใช้คือชื่อของผู้ใช้ที่ได้รับสิทธิ์ในการเข้าถึง ตัวเลือกการให้ทุนเป็นทางเลือก อนุญาตให้ผู้ใช้ให้สิทธิ์การเข้าถึงแก่ผู้ใช้รายอื่น
คำสั่งอนุญาตให้สร้างตารางมีดังต่อไปนี้
ให้สร้างตารางเป็นชื่อผู้ใช้
คำสั่งอนุญาติให้ดรอปโต๊ะมีดังต่อไปนี้
มอบตารางให้ชื่อผู้ใช้
นี่คือคำสั่ง SQL บางส่วนที่มีคำสั่งให้สิทธิ์
เพิกถอนคืออะไร
คำสั่งเพิกถอนเอาสิทธิ์การเข้าถึงของผู้ใช้หรือสิทธิพิเศษไปยังวัตถุฐานข้อมูล ไวยากรณ์มีดังนี้
เพิกถอนสิทธิพิเศษ_name บน object_name
จากชื่อผู้ใช้
ต่อไปนี้เป็นตัวอย่างของการคืนสิทธิ์ในการสร้างตารางจากผู้ใช้เฉพาะ
เพิกถอน สร้างตารางจากชื่อผู้ใช้
โดยสังเขป ข้อความสองประโยคที่ให้มานั้นอธิบายการใช้เงินช่วยเหลือและเพิกถอนโดยสังเขป ข้อความด้านล่างมอบสิทธิ์เลือกตารางนักเรียนให้กับผู้ใช้1.
ให้สิทธิ์นักเรียนแก่ผู้ใช้1
คำสั่งด้านล่าง เพิกถอนสิทธิ์การเลือกตารางนักเรียนจากผู้ใช้1.
เพิกถอนการเลือกนักเรียนจากผู้ใช้1
การอนุญาตและการเพิกถอนต่างกันอย่างไร
ให้ กับ เพิกถอน |
|
grant เป็นคำสั่ง DCL ที่ให้สิทธิ์แก่ผู้ใช้ในวัตถุฐานข้อมูล | เพิกถอนเป็นคำสั่ง DCL ที่อนุญาตให้คืนสิทธิ์ที่กำหนดให้กับผู้ใช้ |
ในการควบคุมแบบกระจายอำนาจ | |
เงินช่วยเหลือนั้นง่ายกว่า | การเพิกถอนมีความซับซ้อน |
การใช้งาน | |
อนุญาตให้กำหนดสิทธิ์การเข้าถึงให้กับผู้ใช้ | อนุญาตให้ลบสิทธิ์การเข้าถึงจากผู้ใช้ |
สรุป – ให้เทียบกับเพิกถอน
ให้และเพิกถอนเป็นคำสั่ง DCL ที่จำเป็นสองคำสั่ง DCL เป็นหมวดหมู่ย่อยของ SQL ความแตกต่างระหว่างการให้สิทธิ์และการเพิกถอนคือการให้สิทธิ์แก่ผู้ใช้ ในขณะที่การเพิกถอนจะใช้สิทธิ์ที่ได้รับจากผู้ใช้คืน