Temat: Dodawanie danych z Oracle do MSSQL

Witam

mam bazę danych na Oraclu, łączę się do niej za pomocą TOADa, mam tam tabele,
potrzebuje dane z tej tabeli codziennie przerzucać do MSSQL do innej tabeli.
Obecnie ręczną robotą mogę to robić za pośrednictwem txt, ale chciałbym to zautoamtyzować.

jak po ustawieniu w TNSNAMES.ORA probuje sobie połączyć tabele w accessie to wyskakuje błąd "-7778", TNS się pinguje w cmd, inne działają bez problemu w accessie.

Czy jest jakiś inny sposób na pełne zautomatyzowanie(nie accesowe)?
Istnieje może inny program w którym można podpiąć tabele z Oracla i MSSQL ?
Czy można zrobić aby automatycznie(o określonej godzinie) wykonywało się zapytanie w TOADzie eksportujące do txt a następnie kolejne zapytanie ze strony MSSQL na import z txt. ?

Z góry dzięki za pomoc.

Temat: Dodawanie danych z Oracle do MSSQL

Jaka wersja bazy Oracle?

Ja bym użył do tego celu Oracle Gateway for ODBC.
Konfigurujesz połączenie ODBC + Oracle Gateway i z poziomu bazy oracle możesz łączyć się do tabelek MSSQL za pomocą DB Link-ówKarol Napiórkowski edytował(a) ten post dnia 21.10.11 o godzinie 18:56

konto usunięte

Temat: Dodawanie danych z Oracle do MSSQL

Paweł Pastucha:
Witam

mam bazę danych na Oraclu, łączę się do niej za pomocą TOADa, mam tam tabele,
potrzebuje dane z tej tabeli codziennie przerzucać do MSSQL do innej tabeli.
Obecnie ręczną robotą mogę to robić za pośrednictwem txt, ale chciałbym to zautoamtyzować.

jak po ustawieniu w TNSNAMES.ORA probuje sobie połączyć tabele w accessie to wyskakuje błąd "-7778", TNS się pinguje w cmd, inne działają bez problemu w accessie.

Czy jest jakiś inny sposób na pełne zautomatyzowanie(nie accesowe)?
Istnieje może inny program w którym można podpiąć tabele z Oracla i MSSQL ?
Czy można zrobić aby automatycznie(o określonej godzinie) wykonywało się zapytanie w TOADzie eksportujące do txt a następnie kolejne zapytanie ze strony MSSQL na import z txt. ?

Z góry dzięki za pomoc.

Rozwiązanie 1.
W TOAD masz coś takiego jak Task Scheduler. Dodajesz sobie zapytanie które zwraca ci plik np: text.txt i zapisuje w jakieś lokalizacji. Następnie tworzysz sobie w bazie MSSQL funkcje która taki plik zasysa.

Rozwiązanie 2

Tworzysz na bazie Oracle procedure która zrzuca ci dany plik podpinasz ją pod schedulera oraclowego (tutaj definiujesz sobie godzinę czas,itp. kiedy ma się wykonac dana zrzutka). Procedura wypluwa ci plik.txt w jakieś lokalizacji

link do schedulera oraclowego:

http://www.oracle-base.com/articles/10g/Scheduler10g.php

Procedura do zrzucania pliku Oracle:

http://psoug.org/reference/utl_file.html

Po stronie MSSQL zaczytujesz plik
Paweł Pasztaleniec

Paweł Pasztaleniec Lead Consultant -
CGI

Temat: Dodawanie danych z Oracle do MSSQL

Witam,

Jeżeli nie jest potrzebne zapamiętywanie w pliku tekstowym eksportowanych danych (np. do celów debugowych), to rozwiązał bym problem poprzez Linked Server. Konfiguruje się w SQL Serverze Linked Server wskazujący na bazę Oracle i w efekcie można dobrać się z poziomu T-SQL do danych bazpośrednio z bazy Oracle. Robiłem tak jakieś 1,5 roku temu i nie pamiętam szczegółów ale działało :-).
W celu automatycznego zaczytywania się danych co określony interwał czasowy, można zapisać kod T-SQL w postaci Stored Procedury i uruchamiać za pomocą SQL Agenta.

Dla osoby bez doświadczenia mającej dostęp do google, nie powinno to zająć więcej niż dzień czasu.

Pozdrawiam
Paweł Pasztaleniec

Temat: Dodawanie danych z Oracle do MSSQL

dzieki za pomoc w poniedziałek jak będe w pracy to wypróbuje oba rozwiązania - zobaczę co się bardziej sprawdzi.

Następna dyskusja:

Zatrudnimy trenera do szkol...




Wyślij zaproszenie do