Sto estendendo il livello dati di un'applicazione esistente per lavorare con Firebird 2.5, oltre a MSSQL e SQLite, ma ho colpito un ostacolo.
Ho un campo chiamato TimeStamp che memorizza i dati / tempo come tipo TimeStamp. Funziona bene con MSSQL e SQLite dove il tipo è datetime, ma rientra in Firebird. Il seguente SQL:
SELECT SysTrnId,"TimeStamp" from "TRANSACTIONS"
apparentemente funziona, ma il campo TimeStamp viene restituito come fieldname "CONSTANT" e il contenuto è il testo "timestamp"
È possibile farlo sotto Firebird o devo rinominare il campo e cambiare il codice negli altri livelli di dati.
risposte:
8 per risposta № 1Il carattere di fuga di Firebird è la doppia citazione "
. Nota che in firebird se hai un campo che devi scappare con virgolette doppie, diventa anche sensibile al maiuscolo / minuscolo. Quindi, se hai dichiarato il tuo campo come TimeStamp
, poi select "TIMESTAMP" ...
fallirà con un campo non trovato errore.
1 per risposta № 2
Non ho idea se funzioni, ma hai provato doppie virgolette su "TimeStamp", le virgolette singole di solito indicano una stringa costante.
Saluti
K