我有一个奇怪的问题,在DEV环境中一切正常,但在PROD中,SSIS报告有关从unicode转换为非unicode的错误。此错误发生在OLE DB源任务级别。所以,我甚至没有机会使用Derived Columns来执行转换。使用Oracle OLE DB源的SSIS(VS2008)
我们在生产服务器上安装了BIDS,并且该任务被标记为出错。当我尝试打开属性时,它告诉我元数据与DTSX文件中的元数据不同。当我接受报价自动更正时,所有错误的列输入类型(外部和输出列)的类型从DT_WSTR
切换到DT_STR
。
所涉及的表的描述在DEV和PROD(列的相同类型)中是相同的。如果我查询字符集,它们在两种环境中都是相同的。
为了您的信息,这里是查询:
SELECT *
FROM v$nls_parameters
where parameter
like '%CHARACTERSET'
返回:
NLS_CHARACTERSET WE8MSWIN1252
NLS_NCHAR_CHARACTERSET AL16UTF16
两个环境。
任何想法解决这个?
谢谢 米歇尔
闻起来很像你有不同版本的驱动程序安装/配置。很久以前,与MySQL驱动程序出现类似的问题。版本X.Y.Z.13是针对开发的。服务器获得了驱动程序版本X.Y.Z.14和繁荣,无效的元数据。 – billinkc 2014-09-26 15:51:42
对不起,如果我花时间回答,但你是对的,这是问题所在。非常感谢! – user2343647 2014-09-29 17:46:57