Fabric is Generally Available. Browse Fabric Presentations. Work towards your Fabric certification with the Cloud Skills Challenge.
I'm trying to call a stored procedure from Snowflake into Excel PowerQuery using an ODBC connection. It works fine when I pass a single or multiple dates (in varchar format), but when I pass a string value (either single or multiple parameters), it gives the following error.
Note that this "Call" runs fine in Snowflake and there are no syntax errors in the procedure itself.
= Odbc.Query("dsn=SNOWFLAKE", "CALL FINANCE_DEV.FINANCE_DB.TEST_PROC_TWO_PERIODS('202303','202304') ;") --Works fine
= Odbc.Query("dsn=SNOWFLAKE", "CALL FINANCE_DEV.FINANCE_DB.TEST_PROC_PERIOD_STATE('MD','202304') ;") --Does not work; see error below
DataSource.Error: ODBC: ERROR [07002] [Snowflake][ODBC] (10690) Expected descriptor record does not exist during query execution.
Any thoughts on this?
Hi,
I was getting a similar problem. I had a Snowflake stored procedure that worked fine when called in Snowflake, but gave the error when called through ODBC. After some testing I narrowed it down to something with using multiple variables in a query inside the procedure.
With the following command in my proc, I get the error when calling the proc through ODBC:
select count(*) into :return_value from identifier(:my_table_name);
With either of these commands instead, the error doesn't appear:
select count(*) into :return_value from my_table;
select count(*) from identifier(:my_table_name);
I was able to re-write the procedure to avoid using the "into" and the ODBC problem is gone for me now. Hopefully this helps.
I'm experiencing the same issue, anyone have an idea what to look at to fix?
Check out the November 2023 Power BI update to learn about new features.
Read the latest Fabric Community announcements, including updates on Power BI, Synapse, Data Factory and Data Activator.