Ich habe eine ältere PostgreSQL-Datenbankquelle (ODBC), die ich mithilfe von SSIS auf ein neues SQL Server-Schema migrieren möchte. Ich erhalte eine Warnung mit den Worten:
Die Abrufmethode 'Zeile für Zeile' wird erzwungen, da die Tabelle LOB-Spalten enthält. Der Spalteninhalt ist LOB
Die Sache ist, keines der Spalte wirklich brauchen LOBs zu sein. Es gibt einige TEXT-Typen, die jedoch problemlos in einen Varchar (max) passen. Noch seltsamer, aber die meisten schon sind Varchars, aber es etwas über varchar scheint (128) behandelt wird , als ob es ein LOB war (im Voraus Eigenschaften, ist der Datentyp DT_NTEXT).
Ich habe versucht, einen manuellen SQL-Befehl auszuführen, bei dem ich jeden Zeichenfolgentyp explizit in einen varchar mit einer geeigneten Länge in der select-Anweisung umgewandelt habe und sie in der ODBC-Quelle immer noch als DT_NTEXT festgelegt sind.
Ich bin kein DBA, also ist es durchaus möglich, dass ich etwas wirklich Dummes mache. Ich möchte nur wissen, wie ich am besten sicherstellen kann, dass die Typen als Varchare enden, damit ich sie abrufen kann. Irgendwelche Ideen?
Falls es wichtig ist, verwende ich SSIS-BI 2014 in Visual Studio 2013.
varchar(max)
nur als Abkürzung, dass die Spaltendaten für SSIS-Zwecke in die maximale Varchar-Größe passen, die bei etwa 4000 liegt, denke ich. Ich besetze eigentlich nichts varchar(max)
; Allerdings habe ich einige Kolumnen gegossen varchar(4000)
, nur um sicher zu gehen.