oracle

2012-07-26 29 views
5

, benim yaptığım bir eşanlamlı oluşturmak için aşağıdaki Ben oluşturmak için ne yapmalıyımoracle

CREATE SYNONYM synonymName FOR databaseName.schema.table; 

Sunucu bağlantı kimlik bilgilerini sağlayabilmek için farklı bir sunucuda barındırılan bir veritabanındaki tabloların eşanlamlılığı.

Hem Oracle hem de netezza için buna ihtiyacım var.

Düzenleme: Aşağıdaki yanıtı referans alarak (Oracle için) çalışırken, uzak bağlantı ip adresi veya bağlantı adında '-' içeriyorsa bir sözdizimi hatası aldım. Örneğin.

CREATE PUBLIC DATABASE LINK rmt CONNECT TO user IDENTIFIED BY pw USING 'remotedb'; 

Sonra eşanlamlı oluşturmak:

CREATE PUBLIC DATABASE LINK abc-def.xyz.com CONNECT TO user IDENTIFIED BY pw USING 'databaseName'; 

cevap

8

Oracle için, uzak veritabanı için veritabanı bağlantısını yaratacak

CREATE SYNONYM syn FOR [email protected]; 

Sonra sadece syn GELEN x, y, z SEÇ ; Netezza hakkında emin değilim.

DÜZENLEME:

Bir kullanamazsınız "-" Bir veritabanı bağlantı adında bir karakter.

Bağlantı adında IP adresi kullanmayı seçerseniz, bağlantı adını çift tırnak içine almanız gerekir. Bunu neden yapmak istediğinizden emin değilsiniz - uzak veritabanınızın IP adresi değişirse ne olur? Bana göre, DB bağlantı adı uzak veritabanı için bir anımsatıcı olmalıdır. Bir IP adresi bana çok az şey anlatıyor. Uzak DB'nin eşanlamlı oluşturmak istiyorsanız Yanı Sıra

+0

Yukarıdaki düzenlemeye göz atmayı düşünür müsünüz? – chemicalkt

0

@DCookie için.

CREATE PUBLIC DATABASE LINK rmt CONNECT TO user IDENTIFIED BY pw USING 
'HOST_NAME:PORT/SERVICE_NAME_SID'