通过ODBC在SSRS报告中使用参数调用MySQL存储过程

时间:2019-02-09 07:23:57

标签: mysql reporting-services ssrs-2012 ssrs-tablix

在SSRS中,当我将硬编码的值传递给存储过程时,它可以正常工作。但是当我尝试传递参数时,它不起作用。

能否请您告诉我通过ODBC数据源在SSRS中调用MySQL存储过程的正确语法。

实际上,我的问题是SSRS或ODBC驱动程序在发送/接收参数值时出现问题。其他语法尝试:

call shop.GetRegions()

call shop.GetRegions(?)

call shop.GetRegions(regid)

call shop.GetRegions(@regid)

这些都不起作用。如果我使用硬编码值(即

)调用该过程

call shop.GetRegions(5)

  • 有效。同样,如果存储过程没有参数,则可以正常工作。我想知道如何在SSRS报表中调用MySQL存储过程吗?您可以在这个问题上给我任何真正的指导吗?

1 个答案:

答案 0 :(得分:1)

我真的不知道从哪里开始,因为似乎有很多事情我可以提及,但是在这里...

首先,我相信您可以将MySQL与SSRS一起使用,但是我不确定为什么您要避免使用与SSRS一起使用的SQL Server。除此之外,我不确定此call函数来自何处?除非您附带一些自定义代码,否则我从未见过。

接下来,如果这是在SSRS中完成的,则需要以正确的方式调用参数。在SSRS中引用参数的语法如下所示 Parameters!regid.Value

与将数据加载到数据集中相反,尝试以这种方式调用过程的原因是我很好奇的另一件事。最简单的事情是数据集从存储过程获取值,这样,SSRS通常会在数据集属性中处理类似此参数问题的事情,而不是显式调用过程。