Qlik Community

QlikView Scripting

Discussion Board for collaboration on QlikView Scripting.

Announcements

Breathe easy -- you now have more time to plan your next steps with Qlik!
QlikView 11.2 Extended Support is now valid through December 31, 2020. Click here for more information.

Not applicable

Load script contains invalid characters ($)

Hello,

I'm attempting to load two columns from an Oracle database.

SQL SELECT "PROJECT_ID", "CHECKSUM$" FROM TABLENAME;

It throws an "ErrorSource: Microsoft OLE DB Provider for ODBC Driver, ErrorMsg: [Oracle][ODBC][ora]ORA-00904: "CHECKSUM$": invalid identifier SQL SELECT "PROJECT_ID", "CHECKSUM$" FROM TABLENAME;

I know the problem is related to the "CHECKSUM$" column because when I remove it my query works without issue. It does not like the fact that there's a dollar sign within the column heading. Are there any ways on the QlikView side to "escape" the dollar sign when loading this column? I'm open to any ideas and re-trying things in the hopes that it works on a second time around. Lastly I'm unable to modify the existing database in any way.

I am using QlikView 11.20 Desktop

1 Solution

Accepted Solutions
Not applicable

Re: Load script contains invalid characters ($)

So it turns out I only have myself to blame for this one. My client is in the middle of rolling out changes to their database and while I was assured nothing would be affect my work, it turns out they actually did drop the CHECKSUM$ column from my tables. *Facepalm* Thanks for the responses from everyone.

7 Replies

Re: Load script contains invalid characters ($)

What happens when you do this:

SQL SELECT "PROJECT_ID",

"CHECKSUM$" as [CHECKSUM$] or "CHECKSUM$" as [CHECKSUM]

FROM TABLENAME;

MVP
MVP

Re: Load script contains invalid characters ($)

Have you tried to access your table and create the SQL SELECT using the table wizard?

Is this what has been produced?

You can also try

SQL SELECT "PROJECT_ID", [CHECKSUM$] FROM TABLENAME;

or

SQL SELECT "PROJECT_ID", `CHECKSUM$` FROM TABLENAME;

or

SQL SELECT "PROJECT_ID", TABLENAME.[CHECKSUM$] FROM TABLENAME;

Note that all these are not QV side attempts to solve your issue, since the SQL statement is send as-is to the database driver and interpreted by the driver.

Also the error is thrown by your database driver. In short: the solution needs to be found on the database driver side.

Not applicable

Re: Load script contains invalid characters ($)

Thanks for the response. When I try with either of your suggestions I receive the following error: ORA-00923: FROM keyword not found where expected. Additionally when trying that statement in Oracle on it's own it throws the same error. Brackets do not appear to be a valid way to alias a column name.

MVP
MVP

Re: Load script contains invalid characters ($)

it works with this syntax with an oledb 32 microsoft for oracle driver

sql select project_id, checksum$ from gmf_bi.a;

and this too

sql select project_id, "CHECKSUM$" from gmf_bi.a;

1.png

Not applicable

Re: Load script contains invalid characters ($)

So it turns out I only have myself to blame for this one. My client is in the middle of rolling out changes to their database and while I was assured nothing would be affect my work, it turns out they actually did drop the CHECKSUM$ column from my tables. *Facepalm* Thanks for the responses from everyone.

Re: Load script contains invalid characters ($)

Makes sense. I should have looked more closely before suggesting something. My bad

MVP
MVP

Re: Load script contains invalid characters ($)

I think Oracle supports double quotes for column name but doesn't support square brackets