Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/ssh/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
通过ODBC从SSRS调用MySQL存储过程_Mysql_Stored Procedures_Reporting Services_Odbc_Ssrs 2008 - Fatal编程技术网

通过ODBC从SSRS调用MySQL存储过程

通过ODBC从SSRS调用MySQL存储过程,mysql,stored-procedures,reporting-services,odbc,ssrs-2008,Mysql,Stored Procedures,Reporting Services,Odbc,Ssrs 2008,我试图调用一个存储过程,该存储过程从ssrs获取Mysql上的一个参数。通过ODBC连接。使用查询设计器调用时,我使用以下语法: `CALL test.ClientSelectExtract(?)` 我得到了以下错误 `SQLBindParameter not used for all parameters` 我找到了解决办法。阅读一篇文章,指出MySql ODBC不支持命名参数。 所以我像这样调用存储过程 呼叫测试。客户端选择提取(?) 在参数文件夹中添加名为parameter1的参数,然

我试图调用一个存储过程,该存储过程从
ssrs
获取Mysql上的一个参数。通过
ODBC
连接。使用
查询设计器调用时,我使用以下语法:

`CALL test.ClientSelectExtract(?)`
我得到了以下错误

`SQLBindParameter not used for all parameters`

我找到了解决办法。阅读一篇文章,指出MySql ODBC不支持命名参数。 所以我像这样调用存储过程
呼叫测试。客户端选择提取(?)

在参数文件夹中添加名为parameter1的参数,然后设置类型和值,然后显式创建名为parameter1的参数以引用?在数据集上,所有的工作都很好


注:如果我有更多?占位符下一个参数将是parameter2,步骤相同等等。

您应该从MYSQL在SSMS中创建链接服务器,然后只有我们才会调用存储过程。调用存储过程的语法:

MySQL(链接服务器名称)上的EXEC('CALL GASP_sales_aps(?,)',@dt_start,@dt_end)

GASP\U sales\U aps-->程序名称


(@dt_start,@dt_end)--->是参数。

除非在使用MySQL时情况有所不同,否则我认为您应该使用
@ParameterName
而不是
。我尝试过了,它向过程发送空字符串,但是当我对普通语句使用它时,它很有效。SSRS参数的设置是什么样子的?数据类型是什么?如何设置(可用/默认)值?请注意,在执行之前,SSRS将用实际值(或csv值,如果是多值参数)替换
@ParamName
,但它不会将其视为查询的适当参数。我使用的SSRS参数是日期时间,但是将它们格式化为YYY-MM-DD格式的字符串。SSRS没有自动创建参数,所以我手动创建了同名的参数,作为测试,存储过程将显示接收到的参数,但我得到空字符串听说您找到了解决方案。别忘了你可以回答自己的问题,并在24小时后接受答案-这将有助于未来的游客通过搜索登陆这里。