Untuk memberikan keistimewaan kepada pengguna menggunakan pernyataan geran di SQL, anda perlu menentukan keistimewaan yang ingin anda berikan, objek (seperti pangkalan data, jadual, atau pandangan) yang mana keistimewaan ini terpakai, dan pengguna atau peranan yang anda berikan keistimewaan ini. Sintaks umum untuk penyata geran adalah seperti berikut:
<code class="sql">GRANT privilege_type [(column_list)] ON object_type object_name TO {user | role | PUBLIC} [WITH GRANT OPTION];</code>
Inilah pecahan komponen:
privilege_type
: Menentukan jenis keistimewaan yang diberikan, seperti Pilih, Masukkan, Kemas kini, Padam, dll.(column_list)
: Pilihan. Jika anda ingin memberikan keistimewaan pada lajur tertentu jadual, senaraikannya di sini.object_type
: Menunjukkan jenis objek, biasanya TABLE
, VIEW
, atau DATABASE
.object_name
: Nama objek khusus yang anda berikan keistimewaan.user | role | PUBLIC
: Pengguna, peranan, atau orang awam yang anda berikan keistimewaan.WITH GRANT OPTION
: Pilihan. Jika ditentukan, penerima juga boleh memberikan keistimewaan yang sama kepada pengguna lain.Sebagai contoh, untuk memberikan pengguna bernama 'John' keupayaan untuk memilih dari jadual 'Pekerja', anda akan menggunakan:
<code class="sql">GRANT SELECT ON TABLE employees TO john;</code>
Kenyataan geran boleh digunakan untuk menetapkan pelbagai keistimewaan bergantung kepada sistem pengurusan pangkalan data tertentu yang digunakan. Berikut adalah beberapa keistimewaan yang paling biasa:
Untuk membatalkan keistimewaan yang sebelum ini diberikan menggunakan penyata geran, anda menggunakan penyataan Revoke. Sintaks pernyataan Revoke adalah serupa dengan pernyataan geran dan adalah seperti berikut:
<code class="sql">REVOKE privilege_type [(column_list)] ON object_type object_name FROM {user | role | PUBLIC} [RESTRICT | CASCADE];</code>
Inilah penjelasan mengenai komponen:
privilege_type
, (column_list)
, object_type
, dan object_name
adalah serupa dengan yang dalam pernyataan geran.user | role | PUBLIC
: Pengguna, peranan, atau orang awam dari mana anda membatalkan keistimewaan.RESTRICT | CASCADE
: Pilihan. RESTRICT
menghalang perintah daripada melengkapkan jika ia akan menjejaskan objek lain, sedangkan CASCADE
membolehkan pembatalan untuk menyebarkan kepada objek yang bergantung.Sebagai contoh, untuk membatalkan keistimewaan pilih dari 'John' di meja 'pekerja', anda akan menggunakan:
<code class="sql">REVOKE SELECT ON TABLE employees FROM john;</code>
Untuk menetapkan keistimewaan kepada beberapa pengguna sekaligus menggunakan pernyataan geran, anda boleh menyenaraikan pengguna yang dipisahkan oleh koma selepas kata kunci TO
. Inilah sintaks umum untuk melakukannya:
<code class="sql">GRANT privilege_type [(column_list)] ON object_type object_name TO user1, user2, user3 [WITH GRANT OPTION];</code>
Sebagai contoh, untuk memberikan keistimewaan pilih pada jadual 'pekerja' kepada beberapa pengguna bernama 'John', 'Jane', dan 'Bob', anda akan menggunakan:
<code class="sql">GRANT SELECT ON TABLE employees TO john, jane, bob;</code>
Pendekatan ini membolehkan anda mengurus keistimewaan secara efisien merentasi beberapa pengguna dalam satu arahan, menyelaraskan tugas pentadbiran pangkalan data.
Atas ialah kandungan terperinci Bagaimana anda memberikan keistimewaan kepada pengguna menggunakan pernyataan geran?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!