SSIS如何使用visual basic向数据库插入空白日期

时间:2009-11-23 08:41:45

标签: sql sql-server vbscript ssis

如何使用可视化基本脚本组件在ssis中插入空白日期到sql数据库? 我必须将日期从excel转移到数据库,如果excel为空,我想在数据库中插入一个空值或空值

感谢

2 个答案:

答案 0 :(得分:4)

在脚本组件中,创建一个类型为DATE的新输出列。这将在脚本中的对象模型中将其作为可写对象公开 - 值为Row.COLUMNNAME Row.COLUMNNAME_IsNull。据推测,您的输入列以字符串列形式出现。

然后在脚本中,在满足适当条件时设置Row.COLUMNNAME_IsNull = True,例如(这是生产代码,来自源的preCOMPDATE字符串列和COMPDATE日期列在输出中):

If Row.preCOMPDATE_IsNull Then
    ' In this example we only set it to NULL is the string is null - you might also do this for blanks or whatever else the string might contain
    Row.COMPDATE_IsNull = True
Else
    ' This is a date cleansing routine defined elsewhere in the script - out of range dates are defaulted to 1/1/1900, among other things, logging errors and setting severities
    Row.COMPDATE = ValidateDate("COMPDATE", _
                                Row.preCOMPDATE, _
                                startDate, _
                                endDate, _
                                New Date(1900, 1, 1), _
                                ErrorDesc, _
                                IsRegDtError)
End If

答案 1 :(得分:2)

空白是指默认日期,还是保持为空?

不是在SQl Server中插入空白日期,而是在SQL表本身中设置默认日期,以便在没有任何内容传递给该字段时自动执行此操作吗?