【发布时间】:2011-08-01 19:48:08
【问题描述】:
我有一个 SSIS 包,它从 SQL 数据库中的表中获取数据,并在另一个数据库的表中插入(或更新现有行)。
这是我的问题,在lookup 之后,我插入或更新行,但超过一半进入插入的行没有添加到表中。
对于插入,我使用了一个 Ole Db Command 对象,在该对象中我使用了我测试过的插入命令。我发现了为什么程序包在没有错误通知的情况下运行,但仍然没有在表中插入所有行。
我已经检查了 sqlProfiler,它说命令是 RCP:Completed 我认为这意味着它应该有效。
如果我在 sql management studio 中使用 sql profiler 给我的数据手动插入(它使用 toe 执行插入语句的值),它可以工作。我检查了数据,一切正常(未插入的行中没有非法数据)。
我完全不知道如何解决这个问题,有人有想法吗?
【问题讨论】:
-
你的问题很模糊:标题提到“日期格式”但问题没有;您说您“发现”了为什么包裹不能满足您的要求,但您没有解释这意味着什么;您没有给出手动工作的 INSERT 语句的示例;您没有提及任何特定的数据类型或您如何知道没有非法数据;你没有提到 SSIS 版本等。
-
Ole 命令在涉及复杂的 SQL 语句时使用。我们能看到 SQL 命令里面的 SQL 语句吗?
-
@Pondlife,试图修复它,发现它不是日期而是其他东西,忘记更改标题,更改标题
-
@Internet Engineer 声明并不复杂,它是一个简单的插入。这就是我被证明这样做的方式,我认为我做错了一段时间,谢谢你清理它
-
所以,即使使用 oleDb 目标,问题也是一样的。这里奇怪的是,我在查找之前将所有数据都放在了一个缓冲表中,没有问题。