Frage

Ich ist Portierung wirklich alten Code, um die UniDAC Komponenten zu verwenden. Ich habe eine Wand mit einem bestimmten UPDATE SQL getroffen, die ein Feld ändert den Namen „zurückkehrt.“ Einfach das Feld löst das Problem nicht in Anführungszeichen Einwickeln, weil der SQL-Dialekt in der Datenbank 1 ist, was nicht doppelte Anführungszeichen Feldbegrenzungszeichen nicht unterstützt. Gibt es eine Möglichkeit, um dies ohne das Feld zu ändern? Ich bin auf delphi 7 und bin weg von den interbase db Komponenten.

Bearbeiten : SQL ist wie folgt:

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

gibt die folgende Fehlermeldung, wenn vorzubereiten versuchen:

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

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

Dies geschieht auch, wenn ich den Client SQL-Dialekt zu 1 im Code festgelegt:

query1.Connection.SpecificOptions.Values['SQLDialect'] := '1';
War es hilfreich?

Lösung

hatte ich in den Entwickler zu sprechen. Es hat sich zu einem bestimmten Punkt gerichtet, aber ich brauche alle Parameter in der Abfrage zu entfernen, bevor es ausgeführt wird. Sehr seltsam, aber es ist ein Problem zu umgehen: /

Andere Tipps

Ist es möglich, dass Sie eine Ansicht zu erstellen, alles zu verlassen gleich, außer für dieses Feld und verwenden Sie diese Ansicht in Ihrer Anwendung?

Ist es möglich, diese Anwendung mit dem Client-DLL eines Firebird <2,1 (1,5 zum Beispiel) und einen Server mit der gleichen Version laufen?

Ich denke, das an die neue Syntax zurückzuführen ist, wo ist ein reserviertes Wort Rückkehr!

Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top