stored-procedures - 存储过程执行在 SSIS Vs 中给出不同的结果。SSMS
问题描述
我执行一个存储过程,它接受 7 个参数并返回一个整数代码。当我运行 exec 语句时,它运行良好并给出了有效的结果。但是当我使用 SSIS 运行相同的程序时,我得到的结果与我的预期完全相反。
我在 Profiler 上运行了跟踪,并看到了正在传递的内容。这些值具有正确的顺序和正确的值。我不确定 SSIS 执行部分发生了什么。
我也验证了数据类型,它们对我来说看起来不错。我在分析器上注意到的一件事是,即使是整数值列也被作为 varchars 传递,并带有单引号。这有什么区别吗?下面是我从 Profiler 得到的
exec sp_executesql N'EXEC [dbo].[ProcName] @P1,@P2,@P3,@P4,@P5,@P6,@P7',N'@P1 varchar(6),@P2 nvarchar(9),@P3 datetime2(0),@P4 varchar(1),@P5 varchar(1),@P6 varchar(4),@P7 nvarchar(5)','743290',N'000000034','2018-07-25 00:00:00','2','2','1002',N'Swift'
谢谢,房车
解决方案
好的。所以这是我的一个错误。在 SSMS 上运行的查询在集群的主实例上运行,因为 SSIS 包指向集群的只读实例。
我的印象是这两个服务器上的数据是相同的,但那是我的错误。我开始将 SSMS 版本指向只读实例,它给出了与我预期完全相同的结果。因此关闭它。
推荐阅读
- css - 带框阴影且宽度不等的三角形
- mysql - (mysql(mariadb 10.xx))在哪里匹配全文和按主键排序说'使用文件排序'
- php - 根据旧记录的值从查询中获取新记录
- matlab - 尝试基于现有函数创建符号函数时出现“无法从字面上证明”错误
- php - codeigniter flashdata 成功消息返回失败
- istio - Istio ServiceEntry 用于具有相互 tls 的外部数据库,无法连接到数据库服务
- r - 在 ggplot 中绘制二项式 GLMER 的随机效应
- php - 如何从excel和数据库中计算匹配的id
- grails - Tomcat 中的 Grails Web 部署得到 HTTP 状态 404 – 未找到
- elasticsearch - 无法在 Kibana 中创建可视化(没有兼容的字段) - 但我有兼容的字段