Interbase & v. 10.1.003+
-
- Posts: 3
- Joined: Tue Oct 10, 2017 12:44 pm
Interbase & v. 10.1.003+
I need to access an Interbase database to create some reports. I can run them manually using the New User SQL option, but when I go to create a regular report, it stops me when I try to select the master table with the erorr message: ____DB access: [INTERSOLV][OSBC InterBase driver][InterBase]Dynamic SQL Error, SQL error code = -104, Token unknown - line 1, char 27,.__DB access: Unexpected text at end of SQL query: ^=^____I^ve used the same ODBC driver with other applications (eg: MS Excel) and have no problems, and also had no problems when actually typing in a query. Any ideas as to where this messages comes from?
=> RE: Interbase & v. 10.1.003+
The error is coming back from the driver. Apparently when R&R makes its call to say give me a list of tables, the syntax that we are using is not agreeable to the interbase driver. Since this happens behind the scenes the only control from the R&R side is to edit the file RSWSQL.INI that is in the R&R program directory. It is a large but self documenting text file. So you could give that a try.____Otherwise, you are faced with needing to write User SQL SELECTs.____Kathleen__R&R Support
-
- Posts: 3
- Joined: Tue Oct 10, 2017 12:44 pm
==> RE: Interbase & v. 10.1.003+
I took at look at that file. After reading through it, I understand that R&R is treating my Interbase as a generic ODBC driver. It looks like that is fine. I read through the ODBC SQL log trace and found the following query preceeded my error previously described:____"Select * from STOCK.gdb where 0 = 1"____There are two questions that come up as a restult of this:____1) in Interbase, all of the tables are contained in one file (.gdb). So why is it appending .gdb to a table name?____2) why is it querying "where 0 = 1"?____If you have any further insight I^d be happy to hear it.____Scott
===> RE: Interbase & v. 10.1.003+
The format of the SELECT depends upon what the driver tells us.__The where 1=0 qualifier is a convention that R&R uses to add a condition that will never be true and is intended to force the driver to realize up front that no rows need to be returned, just the table structure. You can set ADDWHEREFALSE=0 in the INI file as described in the INI file.__To do that you will also need to add an Interbase section to the file and set DataSourceDriver to be the name of your ODBC DLL so that R&R uses that section of the file for Interbase.__That might help.____Kathleen__R&R Support
-
- Posts: 3
- Joined: Tue Oct 10, 2017 12:44 pm
====> RE: Interbase & v. 10.1.003+
Thank you for your help. As it turns out, the main option that needed to be set was "UseFileExt = 0". I must admit that even after reading the documentation, I was not too sure which options to set. You might want to consider adding the Interbase ODBC support into this file in the future, since many people who formerly used Dbase files have switched to Interbase or Firebird. I have included the Interbase section of my file below in case anyone else needs this informaiton in the future. Thanks for your help.____Scott____----------------------------------------____[InterBase]__DataSourceDBMS = InterBase__DataSourceDriver = IBINT13.DLL__AddWhereFalse = 0__UseFileExt = 0