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

Hvordan skriver man lagrede procedurer ved hjælp af tabeller fra et andet skema?

For at skrive en funktion eller procedure ved hjælp af en tabel i et andet skema skal tabelejeren give os det nødvendige privilegium. For eksempel:

SQL>  conn hr/hr
SQL>  grant select on employees to mousumi;

eller bed en superbruger om at gøre det for dig:

SQL>  conn dba_user/password
SQL>  grant select on hr.employees to mousumi;

Privilegier kan gives til roller, men vi kan ikke bruge disse privilegier til at skabe procedurer eller synspunkter. Til det formål skal privilegierne gives direkte til os. Få mere at vide .

Når vi henviser til det, skal vi inkludere skemanavnet:

SQL>  select * from hr.employees;

Alternativt kan vi oprette et synonym for det.

SQL>  create synonym employee_table for hr.employees;
SQL>  select * from employee_table;

Synonymet er bare en etiket:det kan være alt, hvad vi kan lide, forudsat at det er unikt i vores skema (og er i overensstemmelse med Oracles navnekonventioner). Få mere at vide .




  1. DB Design Spørgsmål om Nullable Foreign Keys og Normalisering

  2. SQL-fejl:ORA-01861:literal matcher ikke formatstreng 01861

  3. Data indlæses til stor opdelt tabel

  4. Forespørgsel med kommaseparerede IN-parametre i PLSQL