Hurriyet

29 Mayıs 2014 Perşembe

Oracle Veritabanı: Synonym

SYNONYM:

Oracle synonym'leri belirli bir nesneyi işaret eden ve buna ya aynı adı ya da istediğimiz bir adı verebilmemiz sağlayan objelerdir. Synonym'ler ile tablo, view, sequence, procedure, stored function, package, materialized view, Java class schema object gibi bütün veritabanı nesnelerini işaret eden objeleri oluşturabiliriz.

Synonym'ler ile hangi schemada bulunursak bulunalım, tablo ismine bağlı kalmadan istediğimiz verilere erişebiliriz. Uygulamaların veriyi değiştirmeden çalışması için çok uygundurlar. Verinin sahibinin veya bulunduğu database veya schema'nın nerede olduğuna bakılmaksızın uygun haklar verildikten sonra gerekn programlar tarafından kullanılabilinirler.

Gereken Yetkiler:

Kendi şemamızda synonym yaratmak için "CREATE SYNONYM' yetkisi
Başkalarının şemasında synonym yaratmak için "CREATE ANY SYNONYM" yetkisi
Genel bir synonym yaratmak için "CREATE PUBLIC SYNONYM" yetkisi. Public synonym'i bütün kullanıcılara açıktır. Ancak synonym kullanabilmek ile onun datalarına erişmek farklı olaylardır. Bunun için o nesne üzerine aynı zamanda select yetkisi de verilmelidir.(Farklı bir işlem yapılmayacağı varsayılırsa)

Syntax:

Create or replace synonym schema.synonym for schema.object@dblink;

dblink ifadesi nesne sadece uzaktaki bir veritabanındaysa kullanılır.
or replace ifadesi var olanı değiştirmek için kullanılır.
For ifadesi de hangi veritabanı nesnesi için olacağını gösterir.

Synonym'leri Nereden Kontrol Edebiliriz?

user_synonyms
all_synonyms
dba_synonyms;

Synonym'leri Nasıl Kaldırırız?

drop synonym synonym_adı;

Not: Olmayan nesneler için de synonym'ler yaratılabilinir. Synonym'lerle eşli tablolar synonym'i etkilemeden kaldırılabilinir.

Referans:

Synonym'ler - http://docs.oracle.com/cd/B19306_01/server.102/b14200/statements_7001.htm

Hiç yorum yok:

Yorum Gönder