Announcement

Collapse
No announcement yet.

Konvertierung von utf16(Oracle) für Microsoft SQL Server

Collapse
X
  • Filter
  • Time
  • Show
Clear All
new posts

  • Konvertierung von utf16(Oracle) für Microsoft SQL Server

    Hallo an alle,

    ich habe eine Oracle Datenbank die das Characterset AL16UTF16 besitzt. Dies sollte der Standart UTF16 sein und bis auf ganz wenige ausnahmen den utf8 entsprechen(hat die googlesuche ergeben )nun möchte ich die bestehende Datenbank anzapfen mit einem SQL-SERVER und die Daten importieren. Sprich von Oracle zu Microsoft Datenbanken. Das ganze soll über ein DTSX Paket geschehen jedoch meckert der SQL Server das er das "nicht unicode nicht zu unicode konvertieren kann"

    wieso? utf16 ist doch ein unicode und microsoft arbeitet doch auch in utf 8

    wer kann weiterhelfen?

  • #2
    Ich kenne keine DTSX Pakete, also mal so ins Blaue:

    Wenn es sich zwischen den beiden Servern um eine native Verbindung zum Import handelt, der MSSQL Server also sozusagen als Client des Oracle Servers arbeitet, muss nichts explizit(!) konvertiert werden, sondern lediglich der Zugriff von MSSQL nach Oracle (also Oracle Client auf dem SQL Server) richtig konfiguriert werden.
    Gruß, defo

    Comment


    • #3
      ok das leuchtet ein bzw. wurde von mir über odbc-Treiber von Microsoft für oracle sichergestellt

      vielleicht noch am rande wie ich mir das als sql syntax vorstelle.

      CAST('Ich bin ein TEST' as VARCHAR2(50)) as Test

      es ist ein view der eben in der spalte Test den Zeichensatz "Ich bin ein TEST" anzeigen soll bzw. dann eben importiert(vom sql server) werden soll!

      Comment


      • #4
        Äh, es leuchtet ein, aber Du convertierst trotzdem?
        Wie wär es mit einem simplen
        Code:
        select 
          'Mein Unicode String öäü ÖÄÜß und andere schräge Zeichen' as Test,
          -- echte Feldinhalte
          mto.*
          from <meineOracleTable> mto
        ??
        Gruß, defo

        Comment


        • #5
          das für mich unerklärliche ist das wenn ich ein Cast mache nach VARCHAR 2 der SQL-Server auch mit VARCHAR als Datentyp beim Import arbeiten kann. Mit nvarchar geht dies leider nicht! aber warum?!

          ich verstehe es eben leider nicht!

          Comment


          • #6
            Originally posted by deathdragon View Post
            das für mich unerklärliche ist das wenn ich ein Cast mache nach VARCHAR 2 der SQL-Server auch mit VARCHAR als Datentyp beim Import arbeiten kann. Mit nvarchar geht dies leider nicht! aber warum?!
            Also m.E. brauchst Du gar kein Cast! Der Zugriff auf Oracle sollte transparent funktionieren.
            Ein Import in eine SQL Server Tabelle wäre also ein
            Code:
            Insert into myMSSQLtable (cols,..)
            select cols,.. from ORATable
            AL16UTF16 ist soweit ich mich erinnere der default nchar-charset und wird nur für nchar Spalten verwendet.
            Um Feld spezifische Probleme zu klären, müsstest Du mal die Feldtypen der alphanumerischen Spalten nennen.
            Es sollte aber wie gesagt gar keine Probleme geben, außer bspw. die Daten sind schon in Oracle falsch codiert.

            Am hilfreischsten wäre ein Beispiel SQL, plus Feldtypen, plus Beispieldaten.
            Gruß, defo

            Comment

            Working...
            X