Date 新服务器(即MM/DD/YY而不是DD/MM/YYYY)上的访问日期格式问题

Date 新服务器(即MM/DD/YY而不是DD/MM/YYYY)上的访问日期格式问题,date,Date,我似乎遇到了一个我认为早已解决的问题 我的web主机最近更改了我的一些站点所在的服务器之一,这导致了一个使用access数据库的站点出现问题 插入日期时,现在似乎采用了DD/MM/YYYY格式的日期,并将其记录在数据库中作为MM/DD/YYYY,正如您所想象的那样,这会造成巨大的问题 我似乎记得以前,这是一个关于服务器如何设置的问题,但我不知道要更改什么 服务器使用helm,因此每个网站都在其自己的用户帐户下运行,因此检查我自己的服务器登录是否在英国配置文件下运行显然没有什么区别答案是使用包括插

我似乎遇到了一个我认为早已解决的问题

我的web主机最近更改了我的一些站点所在的服务器之一,这导致了一个使用access数据库的站点出现问题

插入日期时,现在似乎采用了DD/MM/YYYY格式的日期,并将其记录在数据库中作为MM/DD/YYYY,正如您所想象的那样,这会造成巨大的问题

我似乎记得以前,这是一个关于服务器如何设置的问题,但我不知道要更改什么


服务器使用helm,因此每个网站都在其自己的用户帐户下运行,因此检查我自己的服务器登录是否在英国配置文件下运行显然没有什么区别

答案是使用包括插入在内的参数化查询,决不依赖数据的数据库格式。如果您有日期和时间,您应该始终将其作为日期和时间处理,而不是字符串。查询时,获取结果作为日期时间。在查询中插入/更新日期或提供日期时,请使用适当的日期/时间类型将这些值作为参数提供


您没有说明如何访问数据库,因此很难给出更具体的建议。不过,我假设您是以编程方式完成的。

对不起,各位,我应该在这里发布之前继续在谷歌上搜索一下,通过设置session.localid,尝试找到一个快速解决方法。我从asp页面找到了根本原因/解决方案


在“控制面板>区域设置”中,您需要将国家/地区等更改为“英国”

我正在使用SQL在一个不同于mySQL的网页中使用ASP与数据库进行对话,例如,如果您使用access将时间格式化为yyyy mm dd hh:mm:ss,则无法执行此操作,并且当它认为自己更清楚时,它似乎会自动更正格式,因此,除非您使用月份名称插入日期,否则如果它认为不可能,它将swpa您的月份和天数。使用SQL,但使用参数化查询。不要手动将值放入SQL本身-使用参数。这并不能解决将值直接放入SQL的根本问题。在SQL注入攻击、查询缓存性能等方面,这是一个坏主意。我不确定这对我有什么帮助?只是看了一个教程,但我看到的是,它是否使sql字符串更容易构造,并且避免了为无效字符剥离输入。。。我认为这对解决日期问题没有帮助,因为是access在接收到数据后切换日期,而不是sql中发生的事情。。如果你直接在access gui中输入一个日期,你也会看到同样的效果。这也是一个旧的遗留应用程序,所以我不想开始编辑它的每一个涉及日期的部分,上面的解决方案解决了这个问题。谢谢