Red*_*pia 4 sql-server coldfusion datetime odbc lucee
使用ColdFusion(Lucee 4.5),我需要将包含毫秒的日期时间值插入到MSSQL数据库中.我正在创建这样的UTC日期时间值:
nowUTC = dateConvert("Local2UTC", now());
nowODBC = createODBCDateTime(nowUTC);
Run Code Online (Sandbox Code Playgroud)
然后我使用以下SQL代码插入:
insert into tbl (theTime) values (#nowODBC#)
Run Code Online (Sandbox Code Playgroud)
但是,此方法不包括毫秒.插入到db中的值如下所示:
2015-10-26 02:14:07.000
Run Code Online (Sandbox Code Playgroud)
.(句号)结尾后的最后3位数是MSSQL的第二种表示法的分数(1/300),总是.000
我怎么能包括毫秒或几分之一秒? 1/300很好.
我目前无法与Lucee一起测试,但我怀疑问题没有使用cfqueryparam.CF11下的结果相同.要插入日期和时间(包括毫秒),请使用带有类型时间戳的 cfqueryparam,而不是createODBCDateTime:
<cfquery ....>
INSERT INTO tbl (theTime)
VALUES
(
<cfqueryparam value="#nowUTC#" cfsqltype="cf_sql_timestamp">
)
</cfquery>
Run Code Online (Sandbox Code Playgroud)
更新:
正如评论中提到的Redtopia,cfscript版本将是addParam():
query.addParam(name="theTime"
, value=nowUTC
, cfsqltype="cf_sql_timestamp"
);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
1407 次 |
| 最近记录: |