Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/webpack/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
Sql server SQL Server中的字符串日期格式问题_Sql Server - Fatal编程技术网

Sql server SQL Server中的字符串日期格式问题

Sql server SQL Server中的字符串日期格式问题,sql-server,Sql Server,在SQL Server中,我使用Imprt平面文件选项导入了csv。该文件包含转换为nvarchar(50)数据类型的字符串列。 csv包含日期值。 我需要将包含日期列的数据(格式为12/16/2020 19:09:58)加载到2020-12-16 19:09:58.000。 我尝试使用下面的方法使用转换 select convert(datetime, delta_val, 101) from dbo.my_table; 但是得到下面的错误 Conversion failed when co

在SQL Server中,我使用Imprt平面文件选项导入了csv。该文件包含转换为nvarchar(50)数据类型的字符串列。 csv包含日期值。 我需要将包含日期列的数据(格式为12/16/2020 19:09:58)加载到2020-12-16 19:09:58.000。 我尝试使用下面的方法使用转换

select convert(datetime, delta_val, 101) from dbo.my_table;
但是得到下面的错误

Conversion failed when converting date and/or time from character string.

有没有办法解决这个问题?也尝试过使用cast和format方法。同样的问题依然存在。

正如Honeybecger所建议的,使用try\u convert。现在工作

select try_convert(datetime, delta_val) from dbo.my_table;

选择convert(datetime,'12/16/2020 19:09:58',101)
没有问题,因此我建议您也使用不同的格式(或者完全非日期值)。您可以使用
TRY\u CONVERT
找到它们。别忘了
TRY\u CONVERT
会为无法转换的数据返回
NULL
,因此您会丢失数据。ohh。。然后还需要检查这个问题。确切地说,您可以使用
其中try_convert(datetime,delta_val)为NULL,delta_val不为NULL