Tengo una fuente de base de datos PostgreSQL heredada (ODBC) que intento migrar al nuevo esquema de SQL Server usando SSIS. Recibo una advertencia que dice:
El método de búsqueda 'Fila por fila' se aplica porque la tabla tiene columnas de LOB. El contenido de la columna es LOB
La cuestión es que ninguna de las columnas realmente necesita ser LOB. Hay algunos que son tipos de TEXTO, pero podrían caber fácilmente dentro de un varchar (max). Sin embargo, aún más extraño, la mayoría ya son varchars, pero parece que cualquier cosa sobre varchar (128) se está tratando como si fuera un LOB (por adelantado, el tipo de datos es DT_NTEXT).
Intenté hacer un comando SQL manual donde fundí explícitamente cada tipo de cadena en un varchar de una longitud adecuada en la instrucción select, y todavía se están configurando como DT_NTEXT en la fuente ODBC.
No soy un DBA, así que es muy posible que esté haciendo algo realmente estúpido. Solo me gustaría saber la mejor manera de asegurarme de que los tipos terminen como varchars para que pueda obtener lotes. ¿Algunas ideas?
En caso de que sea importante, estoy usando SSIS-BI 2014 dentro de Visual Studio 2013.
varchar(max)
como una abreviatura para decir que los datos de la columna pueden caber dentro del tamaño máximo de varchar, que es alrededor de 4000, para los propósitos de SSIS, creo. En realidad no estoy lanzando nada varchar(max)
; sin embargo, eché algunas columnas a varchar(4000)
, solo para estar seguro.