Warning: file_get_contents(/data/phpspider/zhask/data//catemap/5/sql/82.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/string/5.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/ssis/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
TSQL:来自字符串的日期时间错误_Sql_String_Tsql_Sql Server 2005_Datetime - Fatal编程技术网

TSQL:来自字符串的日期时间错误

TSQL:来自字符串的日期时间错误,sql,string,tsql,sql-server-2005,datetime,Sql,String,Tsql,Sql Server 2005,Datetime,有一些帖子与此相关,但我对TSQL是如此陌生,以至于我无法理解它们,所以请原谅 我的程序是: BEGIN TRY INSERT INTO dbo.myprocedure( Mydate ) VALUES( CONVERT(DATETIME, @mydate, 102) ) 如果我这样执行: EXEC mydbo.dbo.myprocedure @mydate = 'May 8 2012 9:21AM' 我得到这

有一些帖子与此相关,但我对TSQL是如此陌生,以至于我无法理解它们,所以请原谅

我的程序是:

    BEGIN TRY

        INSERT INTO  dbo.myprocedure(
         Mydate

     )
     VALUES(
     CONVERT(DATETIME, @mydate, 102)
)
如果我这样执行:

EXEC mydbo.dbo.myprocedure @mydate = 'May 8 2012 9:21AM'  
我得到这个错误: 从字符串转换日期时间时转换失败

我怎样才能解决这个问题


非常感谢,也许是这样的:

EXEC mydbo.dbo.myprocedure @mydate = '2012/05/08 09:21:00'  
CONVERT(DATETIME,@mydate,102)
更改为
CONVERT(DATETIME,@mydate,100)

或者只是
CONVERT(DATETIME,@mydate)

提及 在MSDN上,如果您查看,您将看到格式102是ANSI格式,或
yyyy.mm.dd
。因此,传递一个类似于
2012.05.08
的日期应该是可行的

看起来
2012.05.08 9:41
2012.05.08 9:41AM
也可以,但这超出了文档格式