[英]Convert DateTime with milliseconds to SQL DateTime
我正在这样查询:
@" if (" + logic + @")
begin
INSERT INTO [FRIIB].[dbo].[Incidents]
([RecTime]
,[Name]
,[Message])
VALUES
('" + dt.ToString("yyyy/MM/dd hh:mm:ss.fff") + //ODBC : Canonical DT Format
并得到这样的SQL:
if (( 1 = 1 ))
begin
INSERT INTO [FRIIB].[dbo].[Incidents]
([RecTime],[Name],[Message])
VALUES
('2011.02.14 04:30:10.020',
和这样的错误:
无法将varchar转换为datetime
我该如何解决? 我究竟做错了什么 ?
有关此问题的SQL文档在这里: datetime支持的字符串文字格式
因此,您可以使用ISO8601(例如:2004-05-23T14:25:10.487),因为如文档中所述:
使用ISO 8601格式的优点是它是具有明确规范的国际标准。 同样,此格式不受SET DATEFORMAT或SET LANGUAGE设置的影响。
嘿,你这样做
java.util.Date dt = new java.util.Date();
java.sql.Date sqlDate = new java.sql.Date(dt.getDate());
并将此sqlDate用作参数。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.