Místo '2013-04-12', jehož význam závisí na místní kultuře, použijte '20130412', který je rozpoznán jako formát invariantní kultury.
Pokud chcete porovnat se 4. prosincem, napište '20131204'. Pokud chcete porovnat s 12. dubnem, měli byste napsat „20130412“.
Článek Write International Transact-SQL Statements z dokumentace SQL Server vysvětluje, jak psát příkazy, které jsou invariantní v kultuře:
Aplikace, které používají jiná rozhraní API nebo skripty Transact-SQL, uložené procedury a spouštěče, by měly používat neoddělené číselné řetězce. Například yyyymmdd jako 19980924.
UPRAVIT
Protože používáte ADO, nejlepší možností je parametrizovat dotaz a předat hodnotu data jako parametr data. Tímto způsobem se zcela vyhnete problému s formátem a získáte také výkonnostní výhody parametrizovaných dotazů.
AKTUALIZACE
Chcete-li použít formát ISO 8601 v literálu, musí být specifikovány všechny prvky. Cituji z části ISO 8601 dokumentace datetime
Chcete-li použít formát ISO 8601, musíte zadat každý prvek ve formátu. Patří sem také T, dvojtečky (:) a tečka (.), které se zobrazují ve formátu.
... zlomek druhé složky je volitelný. Časová složka je uvedena ve 24hodinovém formátu.