Perbedaan Antara Sinonim dan Alias ​​

Anonim

Sinonim vs Alias ​​ (di database ORACLE) | Sinonim pribadi dan sinonim umum

Dalam bahasa Inggris, sinonim dan alias memiliki arti yang hampir sama. Tapi di database ada dua hal yang berbeda. Apalagi di database ORACLE, kedua penggunaannya berbeda. Sinonim digunakan untuk merujuk objek dari skema atau database dari skema lain. Jadi sinonim adalah tipe objek database. Tapi alias datang dengan cara yang berbeda. Itu berarti; mereka bukan objek database Alias ​​digunakan untuk merujuk tabel, tampilan dan kolom di dalam kueri.

Sinonim

Ini adalah jenis objek database. Mereka mengacu pada objek lain dalam database. Penggunaan sinonim yang paling umum adalah, untuk merujuk objek skema terpisah dengan menggunakan nama lain. Tapi sinonim bisa dibuat untuk merujuk objek database lain, juga (dalam database terdistribusi, menggunakan link database). Tabel, tampilan, fungsi, prosedur, paket, urutan, tampilan terwujud, objek kelas java dan pemicu dapat digunakan sebagai referensi untuk sinonim. Ada dua jenis sinonim.

  1. Sinonim pribadi (hanya bisa digunakan oleh pengguna yang menciptakannya.)
  2. Sinonim umum (dapat digunakan oleh semua pengguna yang memiliki hak istimewa yang sesuai)

Di sini, adalah sederhana sintaks untuk membuat sinonim dalam database yang terpisah, membuat myschema sinonim. mytable1 untuk userA. table1 @ database_link1

Karena kita memiliki sinonim bernama mytable1 di myschema untuk userA. table1 @ database_link1 (tabel database terdistribusi) , kita dapat dengan mudah melihat tabel database terdistribusi menggunakan mytable1. Kita tidak perlu menggunakan nama objek yang panjang dengan link database dimana-mana.

Alias ​​

Ini hanyalah nama lain untuk tampilan, tabel, atau kolom di dalam kueri. Mereka bukan objek database. Oleh karena itu, alias tidak berlaku dimanapun dalam skema / database. Mereka hanya berlaku di dalam kueri. Mari kita lihat contoh ini, pilih tab1. col1 sebagai c1, tab2. col2 sebagai c2

dari pengguna1. tab1 tab1, user1. tab2 tab2

dimana tab1. col1 = tab2 col2

Disini, c1 dan c2 adalah kolom alias, yang digunakan untuk tab1. col1 dan tab2. col2, dan tab1 dan tab2 adalah tabel alias, yang digunakan untuk user1. table1 dan user2 table2 Semua alias ini hanya berlaku di dalam kueri ini.

Apa perbedaan antara Sinonim dan Alias ​​ (dalam database ORACLE) ?

  • Sinonim adalah tipe objek database. Tapi alias hanya nama untuk merujuk tabel, melihat atau kolom di dalam kueri. Bukan objek database.
  • Sinonim dapat dibuat untuk tabel, tampilan, fungsi, prosedur, paket, urutan, tampilan terwujud, jenis dan jenis objek kelas java. Tapi alias hanya digunakan untuk tampilan, tabel dan kolomnya.
  • Karena sinonim adalah objek database, mereka valid di dalam skema (sinonim pribadi) atau di dalam database (sinonim publik). Tapi alias berlaku di dalam kueri tempat mereka digunakan.
  • Setiap skema membutuhkan "membuat sinonim" hak istimewa untuk membuat sinonim. Tapi tidak ada hak istimewa untuk menggunakan alias.