【发布时间】:2012-12-11 08:26:47
【问题描述】:
我一直在互联网上寻找答案,但我没有找到任何答案。
我必须在我的表格中的日期(总是用gettime() 保存,因此它将是服务器的日期格式)和我的 Web 应用程序中的日期之间进行数据比较。
我有一个日期选择器,它以类似'Sun Nov 11 2012 00:00:00 GMT+0200 (GTB Standard Time)' 的格式获取日期。我将日期格式化为使用英文设置 SQL 服务器日期,它可以工作。问题是,例如,如果来自法国的用户安装 Web 应用程序,gettime() 函数将根据区域设置以另一种格式保存日期。
我的问题是:
- 是否有任何 SQL 函数可以将格式为“Sun Nov 11 2012...”的日期转换为服务器格式(来自
getdate()函数的日期类型)? - 如果我将该字符串日期作为我的存储过程的参数发送 - 您对解决此问题有何建议?
非常感谢:)
【问题讨论】:
-
如果您(正确地)将该值存储在
datetime列中,则服务器没有 格式。答案应该始终是一样的——尽早将字符串转换为适当的日期时间类型,并依靠基础设施来处理在语言/层之间转换此类类型。 -
这里真的需要返回当天(星期日)吗?
-
感谢所有的答案。不,我不需要工作日,我只需要一个日期时间格式,该格式来自一个由期间选择器插件构建的日期,最终给我一个像“11 月 11 日星期日 ...”这样的数据。我最终在客户端将数据转换为 Y-M-D 格式,然后在存储过程的 endTime 字段中手动添加“23:59:59”,以搜索包括 00:00:00 和 00:23:59 之间的时间段:59。再次感谢大家的答案:)
标签: javascript sql-server datetime