转换日期时间用毫秒到SQL日期时间
问题描述:
我做这样的查询:转换日期时间用毫秒到SQL日期时间
@" 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',
和错误是这样的:
能't convert varchar to datetime
我该如何解决它?我究竟做错了什么 ?
答
这个SQL文件是在这里:Supported String Literal Formats for 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作为paremeter ..
+0
java?作为参数传递? – Cynede 2011-04-25 07:00:05
如何将DateTime转换为2004-05-23T14:25:10.487? – Cynede 2011-04-25 07:42:18
myDateTime.ToString(“s”)为您提供iso 8601格式化文本 – 2011-04-25 07:55:01