【发布时间】:2023-03-12 17:20:01
【问题描述】:
我正在尝试使用 Microsoft SSIS 2008 将 Oracle 12c 数据库表中的数据提取到平面文件中。
Oracle 数据库中的表
Create Table Test
(
Col1 Varchar2(10),
Col2 NUMBER default 0
)
没有为 Col2 Number 字段指定精度/比例。所以它存储给定的值。
样本值
SSIS 包:
在OLEDB源组件的SSIS包中,我们映射了表,Col2映射为DT_WSTR。如果我要更改为 DT_Numeric,我不确定要在精度和比例中指定什么。由于 Oracle 表中没有提到精度/比例。
编辑:
我在“执行阶段”本身的 OLE DB 源本身中遇到错误, [OLE DB 源1] 错误:输出“OLE DB 源输出”(11) 上的输出列“COL2”(20) 存在错误。 返回的列状态为:“文本被截断或目标代码页中的一个或多个字符不匹配。”。
如果我修改 OLE DB 源的输出列中的数据类型,如下所示,它正在工作,我没有修改外部列和 OLE DB 错误输出列。在这两个地方都是 DT_WSTR。这样可以吗?
而且由于我在 OLE DB 源中遇到异常,因此我还没有触及平面文件目标中的任何内容。
【问题讨论】: