IBDAC / UNIDAC + InterBase 6 или 7 + поле таблицы под названием «Возвращение»

StackOverflow https://stackoverflow.com/questions/3450542

  •  27-09-2019
  •  | 
  •  

Вопрос

Я портирую действительно старый код, чтобы использовать компоненты Unidac. Я ударил стену с конкретным обновлением SQL, который меняет поле «Возвращение». Просто упаковочное поле в кавычках не решает проблему, поскольку диалект SQL в базе данных - 1, который не поддерживает двойные разделители поля цитата. Есть ли вокруг этого, не меняя поле? Я нахожусь на Delphi 7, и ухожу от компонентов межбазе БД.

Редактировать: SQL выглядит следующим образом:

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

Возвращает следующую ошибку при попытке подготовить:

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

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

Это происходит даже когда я устанавливаю клиент SQL диалект на 1 в коде:

query1.Connection.SpecificOptions.Values['SQLDialect'] := '1';
Это было полезно?

Решение

Я должен был поговорить с разработчиком. Это было адресовано определенному моменту, но мне нужно удалить все параметры в запросе, прежде чем выполнять его. Очень странно, но его обходной путь: /

Другие советы

Возможно ли вам создать вид, оставляя все то же самое, за исключением этого поля и использовать этот вид в вашем приложении?

Можно ли запустить это приложение с помощью клиентской DLL Firebird <2.1 (например, 1.5) и сервером с одной и той же версией?

Я думаю, что это связано с новым синтаксисом, где возвращаются зарезервированные слова!

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top