【发布时间】:2019-06-26 12:51:08
【问题描述】:
我有一个执行此操作的数据流任务:
- 从两个不同的 OLE DB 源中,运行 SQL 命令来选择一些数据
- 合并加入两个数据库源
- 查找不同的 SQL 数据库源,检查数据是否已存在
- 根据查找匹配输出与查找无匹配输出,使用不同的输入参数运行 INSERT 语句。
问题是,在 INSERT 期间,它抱怨列 'a' 和参数 '1':
无法在 unicode 和非 unicode 字符串数据类型之间进行转换。
我查看了这个 StackFlow 建议,将“a”列更改为 (DT_WSTR) 字符串。但是,该列已设置为该数据类型。
列 'a' 实际上并不是直接从数据库中抓取,而是一个常量值
SELECT 'abc'+ FORMAT(GETDATE(),'yyyyMMdd') + 'zz208874' AS a
知道我做错了什么吗?
【问题讨论】:
-
验证并比较 2 个 OLE DB 命令的语句。目标列的数据类型是什么?
标签: sql sql-server ssis etl oledbcommand