Ssis sql情况下,其他操作不执行任何操作

Ssis sql情况下,其他操作不执行任何操作,ssis,sql-server-2012,sql-update,case-statement,Ssis,Sql Server 2012,Sql Update,Case Statement,我有一个ssis包,它会导入一个csv文件,然后将数据加载到sql server数据库中。 sql server db中的“我的表”有5个字段,其中填充了来自另一个表的日期。如果第一个字段中有一个值,那么它将填充第二个字段,依此类推。这个很好用。我想清除所有字段,所有5个字段都已填充,以便再次启动流程 UPDATE report SET date1 = CASE WHEN date1 IS NOT NULL and date5 IS NOT NULL Then '' else date1

我有一个ssis包,它会导入一个csv文件,然后将数据加载到sql server数据库中。 sql server db中的“我的表”有5个字段,其中填充了来自另一个表的日期。如果第一个字段中有一个值,那么它将填充第二个字段,依此类推。这个很好用。我想清除所有字段,所有5个字段都已填充,以便再次启动流程

UPDATE report
SET
    date1 = CASE WHEN date1 IS NOT NULL and date5 IS NOT NULL Then '' else date1  end,
    date2 =  CASE WHEN date2 IS NOT NULL and date5 IS NOT NULL Then '' else date2 end
    from report

我的问题是“其他”部分。我希望它是这样的情况下。。。然后……否则什么也不做。目前,它使用systemdate“1900-01-01”填充else位,而不是保留原始值。

如果
date1
date2
是实
date
列,则分配一个空字符串(
'
)对他们来说没有任何意义。@horse\u如果它们被填充,我想将它们设置回null
null
(实际上它与
null
完全相反)。如果要将它们设置为
null
,则需要使用:
…然后使用null else date1 end