Get dataset from MySQL Stored Procedure


#1

Hi All,

How to get full dataset from Stored Procedure? I can get one or few values by using OUT parameters:

CALL MySP(@rez);
Select @rez;

but i want to get full data set. Executing procedure without OUT parameters (CALL MySP()) returns all data in any other query editor tool but not in ReDash environment. Here I get error Error running query: No data was returned.

BR
BN


#2

It’s something with the way we execute queries. Unfortunately I don’t have a MySQL setup to test this out, but a pull request addressing this will be welcome!

Thanks.


#3

Hello.

Could I please just check whether this is new behaviour from redash? We have just upgraded from redash 2.0.0.b2990 direct to 4.0.1.b4038 and are now seeing calls to procedures saying ‘Error running query: No data was returned.’ whereas previously we were seeing the output from the procedure call. Our procedures run queries to produce full datasets as opposed to just setting OUT variables.

Is there likely to be any workaround for this ?

Many thanks
Andy


#4

This might get you started on a fix https://stackoverflow.com/questions/563182/getting-return-values-from-a-mysql-stored-procedure-in-python-using-mysqldb

Thanks
Ash


#5

You can try and compare the code of the MySQL query runner between the two versions and check if there was any difference that would affect this.