3

我想知道 SSIS 字符串变量的大小限制是多少。我有一个 OLE DB 数据源,它查询一列(字母数字 10 位)值并将结果集提供给脚本任务,然后脚本任务创建一个基于集合的删除 sql 语句(即 DELETE FROM Table Where ID IN("所有 id 都到这里”)并将 sql 语句分配给一个字符串变量,第三个任务(执行 sql)然后从该变量执行 sql。我想知道我是否在 IN 子句中获得 10,000 个值会导致任何问题字符串变量?请指教

4

2 回答 2

4

字符串变量大小没有限制。SSIS 数据类型派生自 . net子系统,因此如果您确实有一个非常非常大的字符串值,那么您可能会耗尽内存

于 2012-08-10T04:41:27.057 回答
0

一种可能的解决方案是将 ID 放在目标数据库的临时表中,然后您可以执行 DELETE 语句,并在临时表和要从中删除的表之间建立连接。

或者,您可以重写您的语句:DELETE FROM Table WHERE ID IN (SELECT ID FROM TempTable)

于 2018-10-23T06:43:04.800 回答