/ / Używanie zastrzeżonego programu Word TimeStamp jako nazwy pola (Firebird 2.5) - sql, firebird, firebird2.5

Używanie Reserved Word TimeStamp jako nazwy pola (Firebird 2.5) - sql, firebird, firebird2.5

Rozszerzam warstwę danych istniejącej aplikacji do pracy z Firebird 2.5, oprócz MSSQL i SQLite, ale natknąłem się na przeszkodę.

Mam pole o nazwie TimeStamp, które przechowuje dane / czas jako typ TimeStamp. Działa to dobrze w MSSQL i SQLite, gdzie typem jest data / godzina, ale należy do Firebird. Następujący SQL:

SELECT SysTrnId,"TimeStamp" from "TRANSACTIONS"

pozornie działa, ale pole TimeStamp jest zwracane jako nazwa pola „CONSTANT”, a treść jest tekstem „timestamp”

Czy można to zrobić w Firebird, czy też będę musiał zmienić nazwę pola i zmienić kod w innych warstwach danych?

Odpowiedzi:

8 dla odpowiedzi № 1

Znak ucieczki firebirda to podwójny cytat ". Zauważ, że w Firebird, jeśli masz pole, które musisz uciec z podwójnymi cudzysłowami, to także rozróżnia małe i wielkie litery. Więc jeśli zadeklarowałeś swoje pole jako TimeStamp, następnie select "TIMESTAMP" ... zakończy się niepowodzeniem z błędem „nie znaleziono pola”.


1 dla odpowiedzi nr 2

Nie mam pojęcia, czy to działa, ale czy próbowałeś podwójnych cudzysłowów wokół „TimeStamp”, pojedyncze cudzysłowy zwykle oznaczają stały ciąg znaków.

pozdrowienia
K