Di MariaDB, CURRENT_ROLE()
adalah fungsi bawaan yang mengembalikan nama peran saat ini. Peran saat ini menentukan hak akses Anda.
Keluaran dari SELECT CURRENT_ROLE
setara dengan konten information_schema.ENABLED_ROLES
tabel.
Sintaks
Fungsi dapat dipanggil dengan atau tanpa tanda kurung:
CURRENT_ROLE
CURRENT_ROLE()
Tidak ada argumen yang diperlukan atau diterima.
Contoh
Berikut ini contoh untuk didemonstrasikan:
SELECT CURRENT_ROLE();
Hasil:
+----------------+ | CURRENT_ROLE() | +----------------+ | NULL | +----------------+
Dalam kasus saya, tidak ada peran saat ini dan jadi NULL
dikembalikan.
Mari tambahkan peran saat ini:
SET ROLE analyst;
Dan jalankan lagi:
SELECT CURRENT_ROLE();
Hasil:
+----------------+ | CURRENT_ROLE() | +----------------+ | analyst | +----------------+
Sekarang, peran yang kami tambahkan adalah peran saat ini.
Contoh ini mengasumsikan bahwa peran telah dibuat sebelumnya.
Tanpa Tanda kurung
Seperti disebutkan, CURRENT_ROLE()
fungsi dapat dipanggil dengan atau tanpa tanda kurung.
Berikut ini contoh tanpa tanda kurung:
SELECT CURRENT_ROLE;
Hasil:
+--------------+ | CURRENT_ROLE | +--------------+ | analyst | +--------------+
Tidak Ada Argumen yang Diterima
Melewati argumen apa pun ke CURRENT_ROLE()
menghasilkan kesalahan:
SELECT CURRENT_ROLE(1);
Hasil:
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near '1)' at line 1