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: Kunnskap & Visdom 2024, Juli
Anonim

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

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

Synonymer

Dette er en type databaseobjekter. De refererer til andre objekter i databasen. Den vanligste bruken av synonym er å henvise til et objekt i et separat skjema ved å bruke et annet navn. Men synonymer kan også opprettes for å referere objektene til en annen database (i distribuerte databaser, ved å bruke databaselenker). Tabeller, visninger, funksjoner, prosedyrer, pakker, sekvenser, materialiserte visninger, java-klasseobjekter og triggere kan brukes som referanser for synonymene. Det finnes 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 riktige 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 som heter mytable1 i myschema for [email protected]_link1 (distribuert databasetabell), kan vi enkelt henvise til den distribuerte databasetabellen ved å bruke mytable1. Vi trenger ikke bruke det lange objektnavnet med databasekobling over alt.

Alias

Dette er bare et annet navn for en visning, en tabell eller en kolonne inne i en spørring. De er ikke databaseobjekter. Derfor er aliaser ikke gyldige over alt i skjemaet/databasen. De er kun gyldige i søket. La oss se dette eksemplet, velg tab1.col1 som c1, tab2.col2 som c2

from user1.tab1 tab1, user1.tab2 tab2

where tab1.col1=tab2.col2

Her er c1 og c2 kolonnealiaser, som brukes for tab1.col1 og tab2.col2, og tab1 og tab2 er tabellaliaser, som brukes for bruker1.tabell1 og bruker2.tabell2. Alle disse aliasene er kun gyldige i dette søket.

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

Synonymer er en databaseobjekttype. Men aliaser er bare et navn for å referere til en tabell, visning eller en kolonne inne i en spørring. Ikke et databaseobjekt

Synonymer kan opprettes for tabeller, visninger, funksjoner, prosedyrer, pakker, sekvenser, materialiserte visninger, java-klasseobjekttyper og triggere. Men aliaser brukes bare for visninger, tabeller og deres kolonner

Anbefalt: