Frage

Oracle:

select systimestamp from dual

MySQL:

select current_timestamp

SQL Server:

select current_timestamp

PostgreSQL:

select current_timestamp

Die Frage ist, wie kann ich die aktuellen Zeitstempel in HSQLDB bekommen? Ich benutze Version 1.8.0.10

War es hilfreich?

Lösung

Sie können schreiben

select current_timestamp from tablename  

wo tablename ist eine echte Tabelle in Ihrer Datenbank.

Das Ergebnis der Abfrage ist nur der aktuelle Zeitstempel.

Andere Tipps

In einer ausgewählten ich

 SELECT CURRENT_DATE AS today, CURRENT_TIME AS now FROM (VALUES(0))

@ alexdown Antwort ist recht Recht - unter 1.8 benötigen Sie eine einzeilige Beziehung, dies zu tun, wie Oracle DUAL oder die Interbase / Firebird RDB$DATABASE Tabelle

.

Wenn Sie auf die 2.0-Serie bewegen, jedoch werden Sie in der Lage sein, den SQL-99 „VALUES Konstruktor“ zu verwenden, ohne Abhängigkeit von einer einzeiligen Beziehung:

sql> VALUES (current_timestamp);
2010-04-22 15:22:40.997

Wenn Sie die Spalte von den herstellerspezifischen Vorgaben umbenennen müssen, die Picks WERTE, können Sie immer verwenden eine select: SELECT * FROM (VALUES (current_timestamp)) v(my_new_name)

Sie können mit

CALL current_timestamp

den aktuellen Zeitstempel abzurufen. Nach einer Diskussion über die HSQL Mailing-Liste ist dies wesentlich effizienter als ein Dummy-Auswahl von INFORMATION_SCHEMA.SYSTEM_TABLES tun.

Mit HSQLDB 2.1 und höher haben Sie alle Optionen.

Mit der Verbindungseigenschaft hsqldb.syntax_ora, hsqldb.syntax_pgs, hsqldb.syntax_mss oder hsqldb.syntax_mys = true Sie die von anderen Datenbanken unterstützt Formulare verwenden können. Die äquivalente SQL ist SET DATABASE SQL SYNTAX ORA TRUE, und ähnlich für andere Dialekte.

Die native, SQLStandard Form von HSQLDB in allen Modi unterstützt, ist dies:

VALUES (CURRENT_TIMESTAMP)
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top