Да, това е възможно. Връзките в SQL Developer няма да ви помогнат - ще трябва да настроите връзка към база данни от вашата база данни на Oracle към базата данни на SQL Server.
Преди да създадете връзка към база данни, ще трябва да настроите хетерогенен шлюз за свързване към SQL Server.
Общите стъпки включват:
-
Инсталирайте Oracle ODBC драйвери на сървъра, който ще има достъп до отдалечената база данни на SQL Server чрез връзката към базата данни.
-
Настройте ODBC връзката в локалната база данни на Oracle с помощта на Windows ODBC Data Source Administrator
-
Тествайте ODBC драйверите, за да се уверите, че е направена връзка с базата данни на SQL Server.
-
Конфигурирайте хетерогенните услуги на Oracle, като създадете файл initodbc.ora в базата данни на Oracle.
-
Променете
Listener.ora
файл.SID_NAME is the DSN for the remote database. ORACLE_HOME is the actual Oracle home file path. PROGRAM tells Oracle to use heterogeneous services. SID_LIST_LISTENER = (SID_LIST = (SID_DESC = (SID_NAME=ora_sid) -- Enter the DSN on this line (ORACLE_HOME = c:\oracle10gdb) -- Enter your Oracle home on this line (PROGRAM = hsodbc) ) )
-
Променете файла
Tnsnames.ora file
за да сочи към шлюза(DESCRIPTION= (ADDRESS_LIST= (Address=(PROTOCOL=TCP) (HOST= -- (Server x) (PORT=1521))) -- Enter the port on which the server x Oracle installation -- is listening (CONNECT_DATA=(SID=Cas30c)) - Enter the DSN name (HS=OK) -- Enter this value. It tells Oracle to use hetergeneous services )
-
Презаредете слушателя в локалната база данни на Oracle
-
Създайте връзка към база данни в локалната инсталация на Oracle, която има достъп до хетерогенната връзка, която от своя страна се свързва към SQL Server.
След като връзката към базата данни бъде създадена, трябва да можете да вмъкнете в базата данни с помощта на просто:
insert into <oracle_tablename>
select * from <sqlserver_table_name>@dblink_name
Допълнителна информация:
- Документация на Oracle относно свързаността на хетерогенен шлюз
- Документация на Oracle относно създаването на връзки към бази данни
- Установяване на връзка от Oracle към SQL Server (това е малко стара, но много добра, илюстрирана статия!)