SQL 服务器导入和导出向导日期时间问题

SQL Server Import and Export Wizard Datetime issue

我需要导入一个包含日期时间列的平面 csv 文件 - 'ExecutionDateTime'。此列可以有空值,例如:

我正在将其导入现有的 table,ExecutionDateTime 列设置为 Datetime2。

ExecutionDateTime   datetime2,

当我使用 SQL 服务器导入导出向导导入时,我得到的值为“0001-01-01 00:00:00.0000000”,对于空行。我希望它读取 NULL。

ExecutionDateTime 列设置为 Datetime2。

当前行为:

预计:

这可能吗?

我正在使用 SQL Server 2012。

有什么指点吗?

我认为使用向导不可能。但是,您可以在导入时使用 case 语句...

insert into mytable
select
   Id
   ,case when ExecutionDateTime = '' then null else ExecutionDateTime end
from --openrowset, etc...

或者,如果数据集很小 0r 你正在使用分段 table...

,你总是可以在事后修复它
update mytable 
set ExecutionDateTime = null
where ExecutionDateTime = ''

这是一个使用 BULKINSERT

的例子