views:

83

answers:

1

Hello there!

I am porting REALLY old code to use the UniDAC components. I have hit a wall with a specific UPDATE sql that changes a field named "returning." Simply wrapping the field in quotes does not resolve the issue, because the SQL dialect in the database is 1, which does not support double quote field delimiters. Is there any way around this without changing the field? I am on delphi 7, and am moving away from the interbase db components.

Edit: SQL is as follows:

update logger set
returning = :RETURNING
where locator = :LOCATOR

returns the following error when trying to prepare:

---------------------------
Ww
---------------------------

Dynamic SQL Error
SQL error code = -104
Token unknown - line 3, char -1
where.
---------------------------
OK   
---------------------------

This occurs even when I set the client SQL dialect to 1 in code:

query1.Connection.SpecificOptions.Values['SQLDialect'] := '1';
A: 

Is it possible for you to create a view leaving everything the same except for this field and use that view in your application?

Is it possible to run this application with the client dll of a Firebird < 2.1 (1.5 for example) and a server with the same version?

I think this is due to the new syntax where returning is a reserved word!

Ritsaert Hornstra