如何使用 SSIS 从源到目标保持尾随 space
How to keep trailing space from source to destination using SSIS
环境
- 来源:通过 OLE DB 的 Oracle 数据库
- 目标:SQL通过 OLE DB 的服务器 2019
- 工具:SSIS Visual Studio 2019
问题
源具有 space 的值(例如 12345
),但加载到目标数据库 space 已消失(例如 12345
)
我想将所有 space 保留在源数据中并将其输入到目标 table 中,但找不到配置或任何方式来保留这些 space。
问题是目标 table 上的数据类型。
Oracle 使用 VARCHAR2 和 CHAR 数据类型,SSIS 将它们定义为 Unicode 字符串。
第一次,我在 SQL 服务器中用 VARCHAR 声明了一个字符列,但发现在 ETL 之后缺少额外的 space。
我已将 SQL 服务器中的数据类型从 VARCHAR 更改为 NVARCHAR,这可以解决我的问题。
环境
- 来源:通过 OLE DB 的 Oracle 数据库
- 目标:SQL通过 OLE DB 的服务器 2019
- 工具:SSIS Visual Studio 2019
问题
源具有 space 的值(例如 12345
),但加载到目标数据库 space 已消失(例如 12345
)
我想将所有 space 保留在源数据中并将其输入到目标 table 中,但找不到配置或任何方式来保留这些 space。
问题是目标 table 上的数据类型。 Oracle 使用 VARCHAR2 和 CHAR 数据类型,SSIS 将它们定义为 Unicode 字符串。
第一次,我在 SQL 服务器中用 VARCHAR 声明了一个字符列,但发现在 ETL 之后缺少额外的 space。 我已将 SQL 服务器中的数据类型从 VARCHAR 更改为 NVARCHAR,这可以解决我的问题。