SSIS脚本任务int32变量比较

标签 ssis

我使用的是 VS 2008

所以我有两个变量 count_a 和 count_b 在包范围内声明为 Int32 变量 我已在脚本任务编辑器的 ReadOnlyVariables 列表中添加了两个变量

我的脚本任务中的代码如下所示:

        if (Dts.Variables["count_a"].Value == Dts.Variables["count_b"].Value)
        {
             //do something
        }
        else
        {
             //do something
        }

两个变量的默认值都是零。当我单步执行代码时,我看到两个变量的值都为零,但是在计算此表达式时: Dts.Variables["count_a"].Value == Dts.Variables["count_b"].Value

我得到了一个错误

以前有人见过这样的事情

感谢任何建议

最佳答案

您不是在比较 0 与 0。而是在比较 count_a 与 count_b 的内存地址。您需要访问对象的 .Value 属性才能获取值。请注意,您需要将 Value 转换为原始类型。对于您正在执行的比较,.Value.ToString() 就足够了

关于SSIS脚本任务int32变量比较,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21606589/

相关文章:

sql-server - 启动SSIS包时不支持包部分调试

sql-server - SSIS 包中的 "ROW PER BATCH"和 "MAX INSERT COMMIT SIZE"是否有任何相关性?

SQL Server CDC 无效的列名 __$command_id

azure - 使用 SSIS 脚本任务连接到本地服务器,并使用自托管 IR 作为 ADF 中 Azure-SSIS IR 的代理

sql-server - SSIS 中的客户端统计信息

sql-server - SSIS执行SQL任务错误 "Single Row result set is specified, but no rows were returned."

c# - 在未安装集成服务的情况下从 C# 执行 SSIS 包

ssis - ssis 中的参数绑定(bind)

batch-file - 我应该如何执行此文件/文件夹分发任务; SSIS 还是命令脚本?

mysql - 无法从 MySQL 导入表