sql >> Database teknologi >  >> RDS >> Oracle

samle dba_users-oplysninger i Oracle-databasen, når du er tilsluttet som bruger

DBA_*-visningerne i Oracle indeholder information om ALLE objekter i databasen uanset ejerskab. Kun administrative konti har som standard adgang til disse visninger. Dette gøres af sikkerhedsmæssige årsager. For at få en "normal" bruger til at få adgang til disse visninger, skal de have adgang til dem, enten direkte på per-view-basis eller globalt gennem sådanne systemprivilegier som VÆLG ENHVER TABEL (anbefales ikke). Bedre at give adgang til den faktiske DBA_-visning, som brugeren virkelig har brug for. Generelt vil ALL_-visningerne give en typisk bruger al den information, de har brug for.

For at forlade den aktuelle brugersession og oprette forbindelse som en anden bruger, brug CONNECT-kommandoen:

CONNECT sys/pw as sysdba

EDIT:

Ejeren af ​​et objekt kan give adgang til ethvert af deres objekter til en anden bruger eller rolle via GRANT kommando:

GRANT SELECT ON dba_users TO nonsys;

Udført som brugerens SYS, ville dette give udvalgt adgang til dba_users-visningen til brugeren nonsys.

Når bevillingen er udført, vil brugeren nonsys være i stand til at vælge fra denne visning via SELECT-sætningen:

SELECT * FROM dba_users;



  1. MySql SELECT union for forskellige kolonner?

  2. Oracle SQL find tegn ¡ i data

  3. 13 blogartikler om bedste praksis og tips til databasedesign

  4. Viser forskellige værdier med aggregater