Oracle
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Oracle

Oracle cấp quyền thực thi

Bên trong các gói, các đặc quyền được cấp gián tiếp (thông qua một vai trò) bị loại bỏ. Bạn phải cấp các đặc quyền cần thiết trên các đối tượng cơ bản vào tài khoản trực tiếp; ví dụ:

conn sys/[email protected] as sysdba
create user A identified by A;
grant connect, dba to A;
conn A/[email protected]
create table test_tab(pk number);

conn sys/[email protected] as sysdba
create user B identified by B;
grant connect, dba to B;
conn B/[email protected]
select * from A.test_tab; -- this works

create or replace procedure do_it as
l_cnt pls_integer;
begin
  select count(*) into l_cnt from A.test_tab; -- error on compile
end;

Trong ví dụ này, bạn cần một

grant select on A.test_tab to B;

để làm cho nó hoạt động (không quan trọng bạn đang sử dụng SQL động hay tĩnh).



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Tham số Boolean cho thủ tục lưu trữ Oracle

  2. Ánh xạ khóa ngoại với tên cột tùy chỉnh

  3. 2 cách để lấy số phút từ giá trị ngày giờ trong cơ sở dữ liệu Oracle

  4. Oracle 10g chấp nhận năm chữ số trong một ngày

  5. Oracle - Tìm nạp ngày / giờ tính bằng mili giây từ trường kiểu dữ liệu DATE