Skip to main content
Announcements
Live today at 11 AM ET. Get your questions about Qlik Connect answered, or just listen in. SIGN UP NOW

Connector reply error: Executing non-SELECT queries is disabled. Please contact your system administrator to enable it.

No ratings
cancel
Showing results for 
Search instead for 
Did you mean: 
Sonja_Bauernfeind
Digital Support
Digital Support

Connector reply error: Executing non-SELECT queries is disabled. Please contact your system administrator to enable it.

Last Update:

Apr 5, 2024 8:39:51 AM

Updated By:

Sonja_Bauernfeind

Created date:

Feb 14, 2019 7:52:59 AM

Qlik ODBC connector package (database connector built-in Qlik Sense) fails to reload with error Connector reply error:

Executing non-SELECT queries is disabled. Please contact your system administrator to enable it.

The issue is observed when the query following SQL keyword is not SELECT, but another statement like INSERT, UPDATE, WITH .. AS or stored procedure call.

Environment:

  • Qlik Sense Enterprise on Windows
  • Qlik Sense Enterprise SaaS
  • Qlik Sense Desktop
  • QlikView Server
  • QlikView Desktop

 

Cause

See the Qlik Sense February 2019 Release Notes for details on item QVXODBC-1406.

 

Resolution

By default, non-SELECT queries are disabled in the Qlik ODBC Connector Package and users will get an error message indicating this if the query is present in the load script. In order to enable non-SELECT queries, allow-nonselect-queries setting should be set to True by the Qlik administrator. 


To enable non-SELECT queries:

  1. Modify the QvOdbcConnectorPackage.exe.config found in the locations mentioned below.
    Set the parameter allow-nonselect-queries to True  

    This is case-sensitive. true will not work.

    In a multi node environment, the changes need to be applied to all nodes.
    Configuration file QvOdbcConnectorPackage.exe.config locations:

    • Qlik Sense Enterprise: C:\Program Files\Common Files\Qlik\Custom Data\QvOdbcConnectorPackage
    • Qlik Sense Desktop: C:\Users\user-name\AppData\Local\Programs\Common Files\Qlik\Custom Data\QvOdbcConnectorPackage
    • QlikView: C:\Program Files\Common Files\QlikTech\Custom Data\QvOdbcConnectorPackage
      As we are modifying the configuration files, these files will be overwritten during an upgrade and will need to be made again.
      EnableNon-SelectQueries.gif

  2. Non-select statements are now enabled and generally this is sufficient to resolve the issue.

    If, however, you need to run SQL statements without any data table returned (INSERT/ UPDATE/ DELETE/ DROP), you can optionally add the keyword !EXECUTE_NON_SELECT_QUERY at the end of the query. Other queries that return data (such as WITH ... AS in PostgreSQL) do not need this keyword.

    The EXECUTE_NON_SELECT_QUERY signals to the script processing engine that the query may not return any data.
    Only apply !EXECUTE_NON_SELECT_QUERY if you use the default connector settings (such as bulk reader enabled and reading strategy "connector"). Applying !EXECUTE_NON_SELECT_QUERY to non-default settings may lead to unexpected reload results and/or error messages.

More details are documented in the Qlik ODBC Connector package help site.

 

Related Content:

Feature Request Delivered: Executing non-SELECT queries with Qlik Sense Business 
Execute SQL Set statements or Non Select Queries

Labels (2)
Comments
langelwong
Partner - Contributor III
Partner - Contributor III

In a QlikCloud Enviromento what is the procedure?

Sonja_Bauernfeind
Digital Support
Digital Support

Hello @langelwong - in Qlik Sense SaaS editions, this is currently not possible. We have an active improvement request logged for it, and I would recommend lending your voice (your like/vote) to this idea in our ideas exchange: Executing non-SELECT queries with Qlik Sense Business .

SimonLessard
Contributor II
Contributor II

Hi ! I receive the following error when trying to insert data into a temp table with a SQL connector:

The following error occurred:
Unable to get column information for the fields that are used in the query: Object reference not set to an instance of an object.
 
The error occurred here:
SQL SELECT SQL_FIELD INTO #TEMP FROM SQL_TABLE WHERE SQL_TABLE .SQL_FIELD = '2020'
 

Is there a workaround for this ? 

Some people have suggested using a OLE DB connector instead of an SQL one or dowgrading the ODBC Package version but I was wondering if there was a proper solution for SQL connectors.

Thanks !

Ken_T
Specialist
Specialist

I think this setting gets erased/changed back to default after a patch install.... we have had to re-do this several times after patch installs.   If you guys can confirm this is true, it would be a good add to the docs here.

Sonja_Bauernfeind
Digital Support
Digital Support

Thank you for pointing this out @Ken_T 

I have updated the article.

All the best,
Sonja 

cjgorrin
Contributor III
Contributor III

Hi, @Sonja_Bauernfeind. It would be great to put the same note about combining !EXECUTE_NON_SELECT_QUERY and non-standard settings on this other article: https://community.qlik.com/t5/Official-Support-Articles/Qlik-Sense-Reloads-failing-with-error-quot-G...

I added a comment there as well.

Sonja_Bauernfeind
Digital Support
Digital Support

Hello @cjgorrin Working on it! Thank you!

Version history
Last update:
2 weeks ago
Updated by: