将Oracle SQL CLOB值(>;4000个字符)移动到SQL Server而不进行修剪

将Oracle SQL CLOB值(>;4000个字符)移动到SQL Server而不进行修剪,sql,sql-server,oracle,ssis,etl,Sql,Sql Server,Oracle,Ssis,Etl,我正在SSIS中构建ETL,必须将数据从Oracle DB移动到MS SQL Server上的数据仓库 我在迁移数据类型CLOB列的内容时遇到了一个问题。 到目前为止,我正在使用以下方法将CLOB值转换为VARCHAR: dbms_lob.substr(*columnName*, 4000, 1) 然后,我就可以轻松地在SQL Sevrer中编写nvarchar这样的内容 但是,我不想强制修剪所有内容-如何以SSIS/SQL Server可以识别的格式移动CLOB的全部内容(超过4000个字符

我正在SSIS中构建ETL,必须将数据从Oracle DB移动到MS SQL Server上的数据仓库

我在迁移数据类型CLOB列的内容时遇到了一个问题。 到目前为止,我正在使用以下方法将CLOB值转换为VARCHAR:

dbms_lob.substr(*columnName*, 4000, 1)
然后,我就可以轻松地在SQL Sevrer中编写nvarchar这样的内容

但是,我不想强制修剪所有内容-如何以SSIS/SQL Server可以识别的格式移动CLOB的全部内容(超过4000个字符)


我可以将CLOB转换为任何其他数据类型而不进行修剪吗?

您可以使用nvarchar(max)或varbinary吗?@Jeremy问题出在Oracle方面;SSIS不会处理输入CLOB值-问题是,在CLOB到达SSIS/MSSQL之前,我可以在Oracle端将其转换为什么。是否可以将CLOB分块到varchar2(4000)块,然后在MS SQL Server端将它们串在一起?