TSQL:日期时间从字符串错误(TSQL: datetime from character stri

2019-07-29 07:46发布

有与此相关的一些文章,但我很新TSQL,我不能让他们的感觉,所以请原谅我。

我的程序有:

    BEGIN TRY

        INSERT INTO  dbo.myprocedure(
         Mydate

     )
     VALUES(
     CONVERT(DATETIME, @mydate, 102)
)

如果我执行这种方式:

EXEC mydbo.dbo.myprocedure @mydate = 'May 8 2012 9:21AM'  

我得到这个错误:从字符串转换日期时间时,转换失败。

我该如何解决这个问题?

太感谢了

Answer 1:

如果你看的CONVERT文件 ,你会看到格式102是ANSI格式,或yyyy.mm.dd 。 因此,通过像一个日期2012.05.08应该工作。

它看起来像2012.05.08 9:412012.05.08 9:41AM也可以工作,但是这是记录格式之外。



Answer 2:

也许是这样的:

EXEC mydbo.dbo.myprocedure @mydate = '2012/05/08 09:21:00'  


Answer 3:

变化CONVERT(DATETIME, @mydate, 102)CONVERT(DATETIME, @mydate, 100)

或者只是CONVERT(DATETIME, @mydate)

参考CAST和CONVERT和http://www.sqlusa.com/bestpractices/datetimeconversion/ MSDN上



文章来源: TSQL: datetime from character string error