简体   繁体   English

c# SQL 查询错误,格式为 dd.MM.yyyy

[英]c# SQL query Error with format dd.MM.yyyy

Using format from Norway dd.MM.yyyy in my computer I've got syntax error when I try to get data from MS Access database.在我的计算机中使用来自挪威的格式dd.MM.yyyy当我尝试从 MS Access 数据库获取数据时出现语法错误。 Query:询问:

query = "SELECT * FROM DateTable WHERE StartDate BETWEEN #18.03.2016# AND #19.03.2016#"

If I change to other formats (my computer settings and in query) then everything is ok.如果我更改为其他格式(我的计算机设置和查询),则一切正常。

PD: I have the same problem using INSERT. PD:我在使用 INSERT 时遇到了同样的问题。 Thanks谢谢

I would strongly suggest using ISO date format like YYYY-MM-dd for both INSERT/UPDATE and SELECT operations.我强烈建议对 INSERT/UPDATE 和 SELECT 操作使用 ISO 日期格式,如 YYYY-MM-dd。 This will format be understood correctly both by database and .net.这将被数据库和 .net 正确理解。 The format of date is just a cosmetic issue about displaying.日期的格式只是关于显示的一个表面问题。 When you have a correct date object you can show it as you wish.当您有正确的日期对象时,您可以根据需要显示它。

不知道您的代码,但如果您坚持创建 SQL 字符串,则必须将日期值的字符串表达式格式化为如下所示:

query = "SELECT * FROM DateTable WHERE StartDate BETWEEN #2016/03/18# AND #2016/03/19#"

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM