Thay vì '2013-04-12' có ý nghĩa phụ thuộc vào văn hóa địa phương, hãy sử dụng '20130412' được công nhận là định dạng bất biến của văn hóa.
Nếu bạn muốn so sánh với ngày 4 tháng 12, bạn nên viết '20131204'. Nếu bạn muốn so sánh với ngày 12 tháng 4, bạn nên viết '20130412'.
Bài viết Viết câu lệnh SQL giao dịch quốc tế từ tài liệu của SQL Server giải thích cách viết câu lệnh bất biến văn hóa:
Các ứng dụng sử dụng các API khác hoặc tập lệnh Transact-SQL, các thủ tục được lưu trữ và trình kích hoạt, nên sử dụng các chuỗi số chưa được phân tách. Ví dụ:yyyymmdd là 19980924.
CHỈNH SỬA
Vì bạn đang sử dụng ADO, tùy chọn tốt nhất là tham số hóa truy vấn và chuyển giá trị ngày tháng dưới dạng tham số ngày tháng. Bằng cách này, bạn hoàn toàn tránh được vấn đề định dạng và cũng có được những lợi ích về hiệu suất của các truy vấn được tham số hóa.
CẬP NHẬT
Để sử dụng định dạng ISO 8601 theo nghĩa đen, tất cả các phần tử phải được chỉ định. Trích dẫn từ phần ISO 8601 trong tài liệu của datetime
Để sử dụng định dạng ISO 8601, bạn phải chỉ định từng phần tử trong định dạng. Điều này cũng bao gồm T, dấu hai chấm (:) và dấu chấm (.) Được hiển thị ở định dạng.
... phần của thành phần thứ hai là tùy chọn. Thành phần thời gian được chỉ định ở định dạng 24 giờ.