SSIS如何使用Visual Basic将空白日期插入数据库
Posted
技术标签:
【中文标题】SSIS如何使用Visual Basic将空白日期插入数据库【英文标题】:SSIS how can i insert a blank date to database with visual basic 【发布时间】:2009-11-23 08:41:44 【问题描述】:如何在 ssis 中使用 Visual Basic 脚本组件向 sql 数据库中插入空白日期? 我必须将日期从 excel 传输到数据库,如果 excel 为空,我想在数据库中插入一个空白或空值
谢谢
【问题讨论】:
【参考方案1】:在脚本组件中,创建一个新的输出列 - 类型为 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
【讨论】:
【参考方案2】:空白是指默认日期,还是保持为空??
除了在 SQl Server 中插入空白日期之外,您是否可以不只是在 SQL 表本身中设置一个默认日期,以便在没有向该字段传递任何内容时自动执行此操作?
【讨论】:
我必须将日期从 excel 传输到数据库,如果 excel 为空,我想在数据库中插入空白或空值以上是关于SSIS如何使用Visual Basic将空白日期插入数据库的主要内容,如果未能解决你的问题,请参考以下文章
使用 HashTable 对文件组进行排序 - Visual Basic