Oracle
 sql >> Teknologi Basis Data >  >> RDS >> Oracle

Mendapatkan ORA-01031:hak istimewa yang tidak mencukupi saat menanyakan tabel alih-alih ORA-00942:tabel atau tampilan tidak ada

Anda mungkin mendapatkan ORA-01031: insufficient privileges alih-alih ORA-00942: table or view does not exist ketika Anda memiliki setidaknya satu hak istimewa di atas meja, tetapi bukan hak istimewa yang diperlukan.

Buat skema

SQL> create user schemaA identified by schemaA;

User created.

SQL> create user schemaB identified by schemaB;

User created.

SQL> create user test_user identified by test_user;

User created.

SQL> grant connect to test_user;

Grant succeeded.

Buat objek dan hak istimewa

Tidak biasa, tetapi mungkin, untuk memberikan skema hak istimewa seperti DELETE tanpa memberikan SELECT.

SQL> create table schemaA.table1(a number);

Table created.

SQL> create table schemaB.table2(a number);

Table created.

SQL> grant delete on schemaB.table2 to test_user;

Grant succeeded.

Hubungkan sebagai TEST_USER dan coba kueri tabel

Ini menunjukkan bahwa memiliki beberapa hak istimewa pada tabel mengubah pesan kesalahan.

SQL> select * from schemaA.table1;
select * from schemaA.table1
                      *
ERROR at line 1:
ORA-00942: table or view does not exist


SQL> select * from schemaB.table2;
select * from schemaB.table2
                      *
ERROR at line 1:
ORA-01031: insufficient privileges


SQL>


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Terapkan filter di Oracle View

  2. PLS-00103 membuat tabel eksternal dengan SQL dinamis

  3. Bantuan Kueri - String di mana klausa memiliki &karakter

  4. Menemukan tanggal yang hilang secara berurutan

  5. Apa Itu Prosedur Tersimpan PL/SQL Dalam Database Oracle?