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
的例子
我需要导入一个包含日期时间列的平面 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
的例子