1. Diese Seite verwendet Cookies. Wenn du dich weiterhin auf dieser Seite aufhältst, akzeptierst du unseren Einsatz von Cookies. Weitere Informationen
  2. Willkommen im Forum für alle Datenbanken! Registriere Dich kostenlos und diskutiere über DBs wie Mysql, Oracle, Sql-Server, Postgres, Access uvm
    Information ausblenden

Daten aus einer Oracle DB in meinen MS SQL Server 2008 holen

Dieses Thema im Forum "Microsoft SQL Server" wurde erstellt von MarC611, 14 März 2012.

  1. MarC611

    MarC611 Neuer Benutzer

    Hallo zusammen,

    ich nutze einen MS SQL Server 2008.

    Mein Problem ist nun, dass ich Daten aus einer Tabelle in einer Oracle DB in meine MS SQL Datenbank importieren muss.

    Von der Oracle DB kenne ich folgendes:

    Servername,Datenbankname,Tabelle,Benutzer,Passwort und die Tabellendefinition.

    Nun meine Frage, wie ist das realisierbar?

    Ich wäre folgendermaßen vorgegangen.

    Ich hätte mit die Oracle DB als Linked Server eingerichtet und dann hätte ich eine Prozedur geschrieben die mir die Daten rausholt.

    Ungefähr so:

    INSERT INTO tab
    (
    [col1]
    ,[col2]
    )
    SELECT TOP 1
    ,1
    ,2
    FROM [Servername].[DBName].dbo.Tabelle

    Kann ich Oracle DB dann so ansprechen?
    Also über den Namen den ich im LinkedServer gewählt habe.

    Oder gibt es bessere Methoden, die Daten aus einer Oracle Tabelle in eine Tabelle in die MS SQL DB zu schreiben?

    Grüße Marc
     
  2. ukulele

    ukulele Datenbank-Guru

    Da bei Verbindungsserver ein Oracle Verbindungstyp existiert würde ich sagen das geht. Zumindest für eine "normale" Oracle DB. Eleganter geht es eventuell über Software von Drittanbietern (oder Oracle selbst, was ich aber bezweifle), die sich auf soetwas spezialisieren. Aber der Weg über einen Verbindungsserver scheint mir unkomplizierter, probiers doch einfach mal aus... Testtabelle erstellen in MSSQL und fertig. Der Verbindungsserver braucht ja auch keine Schreibrechte in der Oracle DB.
     
  3. MarC611

    MarC611 Neuer Benutzer

    Hallo,

    danke für die schnelle Antwort.
    wie meinst du probieren mit Testtabellen. Ich kann mir ja nur im MS SQL meine Tabellen machen. Kann ich da irgendwie Oracle simulieren.
    Einen Wert müsste ich auch noch schreiben. Aber ich dachte, dass müsste dann analog gehen also:












    UPDATE [Servername].[DBNAME].dbo.Tabelle






    SETwert= 2


    WHERE .....
     
  4. ukulele

    ukulele Datenbank-Guru

    Solange du in Oracle nur lesend zugreifst reicht natürlich in MSSQL eine Testtabelle
     

Diese Seite empfehlen