2012-05-08 43 views
0

有一些帖子與此有關,但我對TSQL很新,我無法理解它們,所以請原諒我。TSQL:日期時間從字符串錯誤

我的程序有:

BEGIN TRY 

     INSERT INTO dbo.myprocedure(
     Mydate 

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

如果我執行這種方式:

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

我得到這個錯誤:從字符串轉換日期時間時 轉換失敗。

我該如何解決這個問題?

萬分感謝

回答

1

如果你看看documentation for CONVERT,你會發現格式102是ANSI格式,或yyyy.mm.dd。所以傳遞一個像2012.05.08這樣的日期應該可以工作。

它看起來像2012.05.08 9:412012.05.08 9:41AM也可以工作,但這是超出記錄的格式。

+0

非常感謝,它工作 – user523129

0

也許是這樣的:

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