


Bagaimana anda memberikan keistimewaan kepada pengguna menggunakan pernyataan geran?
Mar 20, 2025 pm 03:15 PMBagaimana anda memberikan keistimewaan kepada pengguna menggunakan pernyataan geran?
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, biasanyaTABLE
,VIEW
, atauDATABASE
. -
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>
Apakah keistimewaan khusus yang boleh diberikan dengan penyata geran?
Kenyataan geran boleh digunakan untuk menetapkan pelbagai keistimewaan bergantung kepada sistem pengurusan pangkalan data tertentu yang digunakan. Berikut adalah beberapa keistimewaan yang paling biasa:
- Pilih : Membenarkan penerima untuk membaca data dari jadual atau pandangan yang ditentukan.
- Masukkan : Permit penerima untuk menambah baris baru ke jadual yang ditentukan.
- UPDATE : Memberi keupayaan untuk mengubah suai baris sedia ada dalam jadual yang ditentukan.
- Padam : Membolehkan penerima untuk mengeluarkan baris dari jadual yang ditentukan.
- Rujukan : Membolehkan penerima untuk membuat kekangan utama asing yang merujuk jadual yang ditentukan.
- Pencetus : Memberi keupayaan untuk mencipta pencetus pada jadual yang ditentukan.
- Buat : membenarkan penciptaan objek baru dalam pangkalan data (misalnya, jadual, pandangan).
- ALTER : Membolehkan penerima untuk mengubah struktur pangkalan data atau jadual yang ditentukan.
- Drop : Memberi keupayaan untuk memadam objek pangkalan data yang ditentukan.
- Jalankan : Membolehkan penerima untuk menjalankan fungsi atau prosedur yang ditentukan.
- Penggunaan : Membolehkan penerima menggunakan objek pangkalan data tertentu seperti urutan atau domain.
- Semua Keistimewaan : Memberi semua keistimewaan yang ada pada objek yang ditentukan.
Bagaimanakah anda dapat membatalkan keistimewaan yang diberikan menggunakan pernyataan geran?
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
, danobject_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, sedangkanCASCADE
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>
Apakah sintaks untuk menggunakan pernyataan geran untuk memberikan keistimewaan kepada beberapa pengguna sekaligus?
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!

Artikel Panas

Alat panas Tag

Artikel Panas

Tag artikel panas

Notepad++7.3.1
Editor kod yang mudah digunakan dan percuma

SublimeText3 versi Cina
Versi Cina, sangat mudah digunakan

Hantar Studio 13.0.1
Persekitaran pembangunan bersepadu PHP yang berkuasa

Dreamweaver CS6
Alat pembangunan web visual

SublimeText3 versi Mac
Perisian penyuntingan kod peringkat Tuhan (SublimeText3)

Topik panas

Apakah prosedur dan fungsi yang disimpan di MySQL?

Bagaimana anda menetapkan kata laluan untuk akaun pengguna di MySQL?

Bagaimana anda menjamin pelayan MySQL anda terhadap akses yang tidak dibenarkan?

Bagaimana anda menggunakan peranan untuk menguruskan kebenaran pengguna?

Bagaimana anda memberikan keistimewaan kepada pengguna menggunakan pernyataan geran?

Bagaimana anda lulus parameter ke prosedur dan fungsi yang disimpan?

Bagaimana anda menggunakan pembolehubah dalam prosedur dan fungsi yang disimpan?

Apakah jenis keistimewaan yang berlainan dalam MySQL?
