MariaDB
 sql >> Teknologi Basis Data >  >> RDS >> MariaDB

MariaDB CURRENT_ROLE() Dijelaskan

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

  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Failover Tingkat Lanjut Menggunakan Kait Skrip Post/pra

  2. Kembalikan Baris Acak dari Tabel di MariaDB

  3. Bagaimana CHAR_LENGTH() Bekerja di MariaDB

  4. Seberapa Performa Node ProxySQL Anda?

  5. Bagaimana EXP() Bekerja di MariaDB