Pokud musíte použít formát data založený na řetězcích, měli byste vybrat takový, který je bezpečný a funguje v každé instanci SQL Server, bez ohledu na formát data, jazyk a místní nastavení.
Tento formát je známý jako ISO-8601 formát a je to buď
YYYYMMDD (note: **NO** dashes!)
nebo
YYYY-MM-DDTHH:MM:SSS
pro DATETIME sloupec.
Takže místo
Convert(datetime, '28/11/2012', 103)
měli byste použít
CAST('20121128' AS DATETIME)
a pak by ti mělo být dobře.
Pokud používáte SQL Server 2008 - můžete se také podívat na DATE (místo DATETIME ) pro případy, kdy potřebujete pouze datum (bez časové části). Bylo by to ještě jednodušší než použití DATETIME a časová část je vždy 00:00:00