W przypadku Oracle
CREATE DATABASE LINK ...
np.
Po utworzeniu i przetestowaniu łącza do bazy danych możesz wykonać zapytanie (w pokazanym stylu), aby pobrać wiersze ze zdalnej bazy danych.
Odnośnik:http://docs.oracle.com /cd/E11882_01/server.112/e41084/statements_5005.htm#SQLRF01205
KONTYNUACJA
UWAGA:W Oracle termin „baza danych” odnosi się do plików danych i plików dziennika powiązanych z „instancją” Oracle. Pobieranie danych z drugiej „bazy danych” oznacza, że potrzebne jest drugie połączenie z drugą bazą danych. Oracle udostępnia funkcję zwaną „łączem do bazy danych”. Dzięki temu sesja (połączenie) z jedną instancją bazy danych może połączyć się z inną instancją bazy danych. (Bez tej funkcji klient musiałby utworzyć dwa oddzielne połączenia i musiałby osobno wysyłać zapytania do dwóch baz danych.)
Jeśli to pytanie dotyczy zapytań z dwóch oddzielnych „schematów” w ramach tego samego bazy danych, o ile użytkownik ma wystarczające uprawnienia do obiektów w drugim schemacie, identyfikator może być zakwalifikowany nazwą schematu, np.
SELECT * FROM UATDEVORADB.TABLE_NAME
Aby uzyskać dostęp do danych w oddzielnej bazie danych, można użyć łącza do bazy danych...
CREATE DATABASE LINK UADEVORADB
CONNECT TO user
IDENTIFIED BY password
USING 'uadevoradb' ;
(Będzie to wymagało odpowiedniego pasującego wpisu w pliku tnsnames.ora na serwerze Oracle lub serwerze nazw Oracle, lub szczegóły połączenia można przeliterować zamiast wpisu tnsnames.ora, na przykład:
CREATE DATABASE LINK UADEVORADB
CONNECT TO user IDENTIFIED BY password
USING '(DESCRIPTION=
(ADDRESS=(PROTOCOL=TCP)(HOST=uadevorahost1)(PORT=1521))
(CONNECT_DATA=(SERVICE_NAME=uadevoradb.domaindb)))'
Jeśli „użytkownik” określony w łączu do bazy danych różni się od „właściciela” tabeli w systemie zdalnym i nie ma synonimu, który odwołuje się do tabeli, identyfikator tabeli będzie musiał zostać zakwalifikowany z właścicielem...
SELECT * FROM [email protected] ;