on 2014 Oct 15 6:05 AM
Since i upgrade my installation to 16.0.0.2003 I have a problem with my functions accessing proxy tables on a oracle server.
I could bring down the problem to the following lines
if exists ( select 1 from <PROXYTABLE> where <PROXYTABLE>.SATZART = 'F' ) then message 'Found' else message 'Not found' end IF
This has worked for years and now i get the following error back from oracle
SQLCODE = -660 SQLSTATE = WO005 ERRORMSG() = Server 'MYSERVER': [Sybase][SQL Anywhere - Oracle][Oracle]ORA-00923: Schlüsselwort FROM nicht an erwarteter Stelle gefunden
I have set the cis_option to 7 on my system and could see that the Query above is executed as follows
The query is being processed in FULL PASSTHRU mode The Original Statement is (select first 1 from <PROXYTABLE> where <PROXYTABLE>.SATZART = 'F') The Virtual Statement is select vt_1.expr_1 from vt_1 The Remote Statement for vt_1 is (select first 1 from <PROXYTABLE> where <PROXYTABLE>.SATZART = 'F') Execute (MYSERVER): SELECT FIRST 1 FROM SA001.<PROXYTABLE> t1 WHERE t1."SATZART" = 'F'
When I execute the query from iSql i get SQLCODE=122, ODBC 3 State=01000 Not deterministic result set
When I add a order clause to the statement above
select FIRST 1 from <PROXYTABLE> where <PROXYTABLE>.SATZART = 'F' order by <PROXYTABLE>.REFNR
I can reproduce the error [Sybase][SQL Anywhere - Oracle][Oracle]ORA-00923: Schlüsselwort FROM nicht an erwarteter Stelle gefunden SQLCODE=-660, ODBC 3 State="HY000"
The same Query without the FIRST keyword works fine in my case.
select 1 from <PROXYTABLE> where <PROXYTABLE>.SATZART = 'F' order by <PROXYTABLE>.REFNR :::SQL CREATE SERVER "MYSERVER" CLASS 'ORAODBC' USING 'FIBU';
FIBU is a SYSTEM DSN which uses the
SQL Anywhere 16 - Oracle
driver in Version 16.00.00.2003Will this be fixed ? When ?
Request clarification before answering.
User | Count |
---|---|
54 | |
6 | |
6 | |
5 | |
5 | |
5 | |
3 | |
3 | |
3 | |
3 |
You must be a registered user to add a comment. If you've already registered, sign in. Otherwise, register and sign in.