Menentukan hak akses.
Sintaksis
GRANT { { SELECT | INSERT | UPDATE | DELETE | REFERENCES }
[,...] | ALL [ PRIVILEGES ] }
ON tablename
TO { username | groupname | PUBLIC } [, ...]
[ WITH GRANT OPTION ]
GRANT { { INSERT | UPDATE | REFERENCES } (column [, ...]) }
[, ...]
ON tablename
TO { username | groupname | PUBLIC } [, ...]
[ WITH GRANT OPTION ]
GRANT { SELECT | ALL [ PRIVILEGES ] }
ON sequencename
TO { username | groupname | PUBLIC } [, ...]
[ WITH GRANT OPTION ]
GRANT { EXECUTE | ALL [ PRIVILEGES ] }
ON FUNCTION progname
( [ [ argmode ] [ argname ] argtype ] [, ...] )
TO { username | groupname | PUBLIC } [, ...]
[ WITH GRANT OPTION ]
GRANT { EXECUTE | ALL [ PRIVILEGES ] }
ON PROCEDURE progname
[ ( [ [ argmode ] [ argname ] argtype ] [, ...] ) ]
TO { username | groupname | PUBLIC } [, ...]
[ WITH GRANT OPTION ]
GRANT { EXECUTE | ALL [ PRIVILEGES ] }
ON PACKAGE packagename
TO { username | groupname | PUBLIC } [, ...]
[ WITH GRANT OPTION ]
GRANT role [, ...]
TO { username | groupname | PUBLIC } [, ...]
[ WITH ADMIN OPTION ]
GRANT { CONNECT | RESOURCE | DBA } [, ...]
TO { username | groupname } [, ...]
[ WITH ADMIN OPTION ]
GRANT CREATE [ PUBLIC ] DATABASE LINK
TO { username | groupname }
GRANT DROP PUBLIC DATABASE LINK
TO { username | groupname }
GRANT EXEMPT ACCESS POLICY
TO { username | groupname }Deskripsi
Perintah GRANT memiliki tiga varian dasar: pemberian hak istimewa pada objek basis data (tabel, tampilan, urutan, atau program), pemberian keanggotaan dalam suatu peran, dan pemberian hak istimewa sistem. Meskipun varian-varian ini serupa dalam banyak hal, terdapat perbedaan di antara mereka. Untuk informasi lebih lanjut tentang setiap varian, lihat topik spesifik.
Dalam PolarDB for PostgreSQL (Kompatibel dengan Oracle), konsep pengguna dan grup digabungkan menjadi satu jenis entitas yang disebut peran. Pengguna adalah peran yang memiliki atribut LOGIN. Peran tersebut dapat digunakan untuk membuat sesi dan terhubung ke aplikasi. Grup adalah peran yang tidak memiliki atribut LOGIN dan tidak dapat digunakan untuk membuat sesi atau terhubung ke aplikasi.
Sebuah peran dapat menjadi anggota dari satu atau lebih peran lainnya. Dengan demikian, konsep tradisional keanggotaan pengguna dalam grup tetap berlaku. Namun, karena generalisasi pengguna dan grup, pengguna juga dapat termasuk dalam pengguna dan grup lainnya, membentuk hierarki multi-level umum dari peran. Dalam perintah GRANT, tidak ada pembedaan apakah penerima hak adalah pengguna atau grup, karena nama pengguna dan nama grup berbagi namespace yang sama.