Posts Tagged ‘Code’

TeraDateTime

Freitag, 27. Juni 2014

C#/.NET:

public long ToTeraDateTime(System.DateTime dt)
{
    return Convert.ToInt64((dt.ToOADate() - 2.0) * 1000000000000L);
}

Und auf dem SQL-Server wird wieder ein Zeitpunkt daraus:

CAST(dt / 1000000000000 AS datetime)

Wozu das gut sein soll? Die Zeitpunkt-Information kann als Ganzzahl in SQL-Statements eingebaut werden, was aber normalerweise dank Prepared Statements selbst in multi-nationalen Szenarien unnötig ist. Überall wo keine Prepared Statements möglich sind, könnte diese Spielerei allerdings (auf recht einfache Art) das ungeliebte Herumgefrickel mit den Datums- und Uhrzeit-Formaten ersparen.

Advertisements