Ich versuche, einen regelmäßigen Import einer Excel-Tabelle einzurichten, die wir von einem Anbieter erhalten. Ich verwende SQL 2008 R2 SSIS, um es in eine Tabelle zu importieren. Der Problemverbindungsmanager ist eine OLE DB-Verbindung zur Tabelle. Die Tabelle ist Excel 2005. Der Datenbankverbindungsmanager verwendet Native OLE DB \ SQL Native Client.
Das Problem, das ich bekomme, ist, dass die OLE DB-Quelle immer wieder einige der Excel-Spalten DT_WSTRmit einer 255Länge festlegt . Ich habe jedoch 2 Spalten mit 4000 bzw. 8000 Zeichen. Ich habe die Registerkarte Advanced Editor/ Input and Output Propertiesfür die OLE DB-Quelle aufgerufen und den Datentyp / die Länge in der External ColumnsListe und der Output ColumnsListe geändert . Leider erscheint beim Verlassen Advanced Editorein Fehler in der Fehlerliste.
Validation error. Data Flow Task: Data Flow Task: The output column "ColumnName" (226)
on the error output has properties that do not match the properties of its
corresponding data source column.
Wenn ich erneut auf die Quelle klicke, erhalte ich die Option, die Fehler automatisch zu "beheben". Ich wähle dann "Ja" und "OK". Der Fehler ist jetzt weg, aber wenn ich zurück zum External ColumnsDatentyp / zur Länge gehe, sind die Einstellungen wieder auf dem Original DT_WSTR/255.
Ich könnte die Tabelle manuell in eine begrenzte Datei ändern, um das Problem zu vermeiden, würde aber lieber keinen manuellen Schritt in den Prozess einfügen. Kennt jemand eine Möglichkeit, eine Excel-Quelle zu erhalten, die eine lange Spalte zulässt?
DT_WSTRzu zu wechseln , DT_STRaber derzeit kann ich für diese Zeilen nicht so weit kommen.