Perbezaan Antara Sinonim dan Alias

Sinonim vs Alias (dalam pangkalan data ORACLE) | Sinonim persendirian dan Sinonim awam
 

Dalam bahasa Inggeris, sinonim dan alias mempunyai makna yang hampir sama. Tetapi dalam pangkalan data mereka adalah dua perkara yang berbeza. Terutama dalam pangkalan data ORACLE, kedua-dua penggunaannya berbeza. Sinonim digunakan untuk merujuk objek dari skema atau pangkalan data dari skema lain. Jadi sinonim adalah jenis objek pangkalan data. Tetapi alias datang dengan cara yang berbeza. Maksudnya; mereka bukan objek pangkalan data. Aliases digunakan untuk merujuk jadual, pandangan dan lajur di dalam pertanyaan.

Sinonim

Ini adalah jenis objek pangkalan data. Mereka merujuk kepada objek lain dalam pangkalan data. Penggunaan sinonim yang paling umum adalah, untuk merujuk objek skema berasingan dengan menggunakan nama lain. Tetapi sinonim boleh diwujudkan untuk merujuk kepada objek pangkalan data lain, juga (dalam pangkalan data teragih, menggunakan pautan pangkalan data). Jadual, pandangan, fungsi, prosedur, pakej, urutan, pandangan yang terwujud, objek kelas kelas dan pencetus boleh digunakan sebagai rujukan untuk sinonim. Terdapat dua jenis sinonim.

  1.  Sinonim persendirian (boleh digunakan hanya oleh pengguna yang membuatnya.)
  2.  Sinonim awam (boleh digunakan oleh semua pengguna yang mempunyai keistimewaan yang sesuai)

Di sini, adalah sintaks yang mudah untuk mewujudkan sinonim dalam pangkalan data berasingan,

buat sinonim myschema.mytable1 untuk [email dilindungi] _link1

Oleh kerana kita mempunyai sinonim bernama mytable1 dalam myschema untuk [email dilindungi] _link1 (jadual pangkalan data diedarkan), kita boleh dengan mudah merujuk jadual pangkalan data diedarkan menggunakan mytable1. Kita tidak perlu menggunakan nama objek lama dengan pautan pangkalan data di mana-mana sahaja.

Alias

Ini hanya nama lain untuk paparan, jadual, atau lajur di dalam pertanyaan. Mereka bukan objek pangkalan data. Oleh itu, alias tidak sah di mana-mana dalam skema / pangkalan data. Mereka sah di dalam pertanyaan sahaja. Marilah kita lihat contoh ini,

                                    pilih tab1.col1 sebagai c1, tab2.col2 sebagai c2

                                       dari tab1 user1.tab1, user1.tab2 tab2

                                       di mana tab1.col1 = tab2.col2

Di sini, c1 dan c2 adalah alias lajur, yang digunakan untuk tab1.col1 dan tab2.col2, dan tab1 dan tab2 adalah alias jadual, yang digunakan untuk user1.table1 dan user2.table2. Semua alias ini sah di dalam pertanyaan ini sahaja. 

Apakah perbezaan antara Sinonim dan Alias? (dalam pangkalan data ORACLE)?

  • Sinonim adalah jenis objek pangkalan data. Tetapi nama alias hanya nama untuk merujuk jadual, paparan atau lajur di dalam pertanyaan. Bukan objek pangkalan data.
  • Sinonim boleh dibuat untuk jadual, pandangan, fungsi, prosedur, pakej, urutan, pandangan yang terwujud, jenis objek kelas java dan pencetus. Tetapi alias digunakan hanya untuk pandangan, jadual dan lajurnya.
  • Oleh kerana sinonim adalah objek pangkalan data, ia sah di dalam skema (sinonim persendirian) atau di dalam pangkalan data (sinonim awam). Tetapi alias sah di dalam pertanyaan di mana mereka sedang digunakan.
  • Setiap skema memerlukan "Mencipta sinonim" keistimewaan untuk mencipta sinonim. Tetapi tidak ada keistimewaan untuk menggunakan alias.