Forskjellen Mellom Synonym Og Alias

Innholdsfortegnelse:

Forskjellen Mellom Synonym Og Alias
Forskjellen Mellom Synonym Og Alias

Video: Forskjellen Mellom Synonym Og Alias

Video: Forskjellen Mellom Synonym Og Alias
Video: What is the meaning of the word ALIAS? 2024, November
Anonim

Synonym vs Alias (i ORACLE-databaser) | Private synonymer og offentlige synonymer

På engelsk har synonym og alias nesten samme betydning. Men i databaser er det to forskjellige ting. Spesielt i ORACLE-databaser er begge bruken forskjellig. Synonymer brukes til å henvise objekter til et skjema eller en database fra et annet skjema. Så synonym er en databaseobjektype. Men aliasene kommer på en annen måte. Det betyr; de er ikke databaseobjekter. Aliaser brukes til å henvise til tabeller, visninger og kolonner i spørsmål.

Synonymer

Dette er en type databaseobjekter. De viser til andre objekter i databasen. Den vanligste bruken av synonym er å henvise et objekt til et eget skjema ved å bruke et annet navn. Men synonymer kan også opprettes for å henvise til objektene til en annen database (i distribuerte databaser, ved hjelp av databasekoblinger). Tabeller, visninger, funksjoner, prosedyrer, pakker, sekvenser, materialiserte visninger, java-klasseobjekter og utløsere kan brukes som referanser for synonymer. Det er to typer synonymer.

  1. Private synonymer (kan bare brukes av brukeren som opprettet dem.)
  2. Offentlige synonymer (kan brukes av alle brukere som har de rette rettighetene)

Her er en enkel syntaks for å lage et synonym i en egen database, opprett synonym myschema.mytable1 for [email protected] _link1

Siden vi har et synonym med navnet mytable1 i myschema for [email protected] _link1 (distribuert databasetabell), kan vi enkelt henvise til den distribuerte databasetabellen ved hjelp av mytable1. Vi trenger ikke bruke det lange objektnavnet med databasekobling overalt.

Alias

Dette er bare et annet navn for en visning, en tabell eller en kolonne i et spørsmål. De er ikke databaseobjekter. Derfor er aliaser ikke gyldige overalt i skjemaet / databasen. De er bare gyldige i spørringen. La oss se dette eksemplet, velg tab1.col1 som c1, tab2.col2 som c2

fra bruker1.tab1 tab1, user1.tab2 tab2

der tab1.col1 = tab2.col2

Her er c1 og c2 kolonnealiaser, som brukes til tab1.col1 og tab2.col2, og tab1 og tab2 er tabellaliaser, som brukes til user1.table1 og user2.table2. Alle disse aliasene er kun gyldige i dette spørsmålet.

Hva er forskjellen mellom Synonym og Alias (i ORACLE-databaser)?

Synonymer er en databaseobjektype. Men aliaser er bare et navn for å henvise til en tabell, visning eller en kolonne i et spørsmål. Ikke et databaseobjekt

Synonymer kan opprettes for tabeller, visninger, funksjoner, prosedyrer, pakker, sekvenser, materialiserte visninger, java-klasse objekttyper og utløsere. Men aliaser brukes bare for visninger, tabeller og deres kolonner

Siden synonymer er et databaseobjekt, er de gyldige i skjemaet (privat synonym) eller inne i databasen (offentlig synonym). Men aliaser som er gyldige i spørringen der de blir brukt

Hvert skjema trenger "opprett synonym" -rettighet for å opprette synonymer. Men det er ikke noe privilegium å bruke aliaser

Anbefalt: