您始终可以在 SQL Server 语句中使用 ISO 格式。为此,我编写了一个函数。
function getIsoTimestamp(dt_in, s_time_zone, n_options)
' time zone format examples: "" = local time; "Z" = Zulu time/UTC, "+0100" = MEZ/CET
' options:
' 1: remove time information
' 2: remove date delimiter char
' 4: remove time delimiter char
dim s_out, s_year, s_month, s_day, s_hour, s_min, s_sec
dim s_date_delim, s_time_delim
s_out = ""
if isDate(dt_in) then
s_date_delim = iff((n_options AND 2)=2, "", "-")
s_time_delim = iff((n_options AND 4)=4, "", ":")
' format date
s_year = year(dt_in)
s_month = Right(100 + month(dt_in), 2)
s_day = Right(100 + day(dt_in), 2)
s_out = s_year & s_date_delim & s_month & s_date_delim & s_day
' format time
if (n_options AND 1)=0 then
s_hour = Right(100 + hour(dt_in), 2)
s_min = Right(100 + minute(dt_in), 2)
s_sec = Right(100 + second(dt_in), 2)
s_out = s_out & "T" & s_hour & s_time_delim & s_min & s_time_delim & s_sec & s_time_zone
end if
end if
getIsoTimestamp = s_out
end function
你可以用getIsoTimestamp(now(), "", 0)
它来测试它。