يُستخدم استعلام CHECK GRANT للتحقق مما إذا كان المستخدم/الدور الحالي قد مُنح امتيازًا محددًا.
البنية الأساسية للاستعلام كما يلي:
CHECK GRANT privilege[(column_name [,...])] [,...] ON {db.table[*]|db[*].*|*.*|table[*]|*}
privilege — نوع الامتياز.
إذا كان قد سبق منح المستخدم هذا الامتياز، فستكون قيمة check_grant في الاستجابة هي 1. وإلا، فستكون قيمة check_grant في الاستجابة هي 0.
إذا كان table_1.col1 موجودًا وكان المستخدم الحالي قد مُنح امتياز SELECT/SELECT(con) أو دورًا (يتضمن هذا الامتياز)، فستكون الاستجابة 1.
CHECK GRANT SELECT(col1) ON table_1;
┌─result─┐
│ 1 │
└────────┘
إذا لم يكن table_2.col2 موجودًا، أو إذا لم يُمنح المستخدم الحالي امتياز SELECT/SELECT(con) أو دورًا (يتضمن هذا الامتياز)، فستكون الاستجابة 0.
CHECK GRANT SELECT(col2) ON table_2;
┌─result─┐
│ 0 │
└────────┘
عند تحديد الامتيازات، يمكنك استخدام النجمة (*) بدلًا من اسم جدول أو اسم قاعدة بيانات. يُرجى مراجعة امتيازات أحرف البدل للاطلاع على قواعد أحرف البدل. آخر تعديل في ٢٥ يونيو ٢٠٢٦