我已经试着为我的问题找到一个解决方案,但遗憾的是问题还在继续。我有一个excel数据目标,我正试图Map到ssis[请注意,我是说ssis识别excel输入数据类型的方式有问题。情况是 OLE DB Source > Data Conversion > Excel Destination
,请不要告诉我进行数据转换或使用input and output properties方法,因为它不起作用,它只会转换回ssis“认为”的内容,即单击“操作”窗口的那一刻]。我正在尝试通过ssis创建一个新的excel文档,方法是将模板从OLEDB源Map到我的数据源。
现在,当我在excel目标中使用示例数据时,它可以正常工作,因为ssis注册工作簿中的值是ntext[这是我想要的]。但是,当我应用表达式来使用一个空白模板[只有标题没有示例数据]时,它会将模板中的数据类型转换为nvarchar(255),这是错误的,并且当我执行它时,由于数据类型不兼容,我的包会失败。
我曾尝试将excel工作簿中的数据类型转换为文本格式,但这并不重要,因为当您将其拉入数据流时,ssis会将其覆盖,并将该列标识为nvarchar(255)。即使我放弃并遵从了,因为我太恼火而将输入数据更改为nvarchar(255),它仍然不起作用,因为它使我的包失败,并给我一个错误消息,它截断了我的列字段[--“]。我赢不了。
我可能会尝试使用sql命令强制它在excel目标编辑器中将该列标识为ntext,或者只是重写某种形式的强制ssis以将该列标识为ntext,但是否有其他我不知道的方法?我觉得这是一个众所周知的问题,应该有一个合理的解决办法。如有任何帮助,我们将不胜感激。谢谢您。
暂无答案!
目前还没有任何答案,快来回答吧!