来自 SQL 记录集的日期缺少毫秒;自动格式化为美国语言环境
Date from SQL recordset missing milliseconds; auto-formatted to US locale
我正在使用以下代码从 SQL 数据库中检索日期。
set db = Server.CreateObject("ADODB.Connection")
db.Open dbConnection
Set c1 = Server.CreateObject("ADODB.Command")
Set c1.ActiveConnection = db
c1.CommandType = adCmdText
c1.CommandText = "SELECT [Date] FROM SomeTable WHERE ID=?"
c1.Parameters.Append c1.CreateParameter("@ID", adVarWChar, adParamInput, 255, CStr(ID))
set rs = Server.CreateObject("ADODB.Recordset")
rs.Open c1, , 1, 3
打印rs("Date")
时,日期打印为12/1/2017 2:15:07PM
。
运行上面查询数据库returns这个日期2017-12-01 14:15:06.675
.
我的总体目标是不接收日期,即四舍五入到下一整秒。我宁愿收到一个毫秒被剥离而不是四舍五入的日期。在这种情况下:12/1/2017 2:15:06PM
.
也可以,接收日期同查询returns日期:2017-12-01 14:15:06.675
此时我不确定是什么原因导致日期自动格式化。
非常感谢您的帮助:-)
您可以使用 DateDiff,但它可以 return 的最小单位是秒。不过,从秒数中获取毫秒数没问题:
milliSecs = DateDiff("s", cdate("1970-01-01"), rs("Date")) * 1000
您最好将列转换为字符串并直接在 sql 中格式化 [date] 列:
c1.CommandText = "SELECT CONVERT( VARCHAR(24), [Date], 121) FROM SomeTable WHERE ID=?"
有关更多日期格式,请查看 https://docs.microsoft.com/en-us/sql/t-sql/functions/cast-and-convert-transact-sql
我正在使用以下代码从 SQL 数据库中检索日期。
set db = Server.CreateObject("ADODB.Connection")
db.Open dbConnection
Set c1 = Server.CreateObject("ADODB.Command")
Set c1.ActiveConnection = db
c1.CommandType = adCmdText
c1.CommandText = "SELECT [Date] FROM SomeTable WHERE ID=?"
c1.Parameters.Append c1.CreateParameter("@ID", adVarWChar, adParamInput, 255, CStr(ID))
set rs = Server.CreateObject("ADODB.Recordset")
rs.Open c1, , 1, 3
打印rs("Date")
时,日期打印为12/1/2017 2:15:07PM
。
运行上面查询数据库returns这个日期2017-12-01 14:15:06.675
.
我的总体目标是不接收日期,即四舍五入到下一整秒。我宁愿收到一个毫秒被剥离而不是四舍五入的日期。在这种情况下:12/1/2017 2:15:06PM
.
也可以,接收日期同查询returns日期:2017-12-01 14:15:06.675
此时我不确定是什么原因导致日期自动格式化。
非常感谢您的帮助:-)
您可以使用 DateDiff,但它可以 return 的最小单位是秒。不过,从秒数中获取毫秒数没问题:
milliSecs = DateDiff("s", cdate("1970-01-01"), rs("Date")) * 1000
您最好将列转换为字符串并直接在 sql 中格式化 [date] 列:
c1.CommandText = "SELECT CONVERT( VARCHAR(24), [Date], 121) FROM SomeTable WHERE ID=?"
有关更多日期格式,请查看 https://docs.microsoft.com/en-us/sql/t-sql/functions/cast-and-convert-transact-sql