无法将空白日期字段导入MySQL数据库

时间:2013-10-04 04:12:57

标签: mysql vb.net

我正在尝试查询DB1并在我的应用程序中将所有条目填充到DB2中,但是,我遇到的问题是DB1正在为datetime字段返回一个空白条目。

当我的应用程序尝试读入数据时,我得到一个例外:从“DBNull”类型转换为“Date”类型无效

Dim tmp_closed_at_Date As Date
Dim closed_at_Date As String

tmp_closed_at_Date = dt.Rows(i)("closed_at")
If Not tmp_closed_at_Date = Nothing Then closed_at_Date = tmp_closed_at_Date.ToString("yyyy-MM-dd HH:mm:ss")

我不确定我的代码是否正确,但我发现当我将数据返回到数据表时,它将日期格式从'yyyy-MM-dd HH:mm:ss'转换为' dd \ MM \ yyyy HH:mm:ss'所以我不得不将日期转换回字符串以允许填充到DB2中。

任何帮助都将不胜感激。

P.S。由于DB1是第三方数据库,我无法对表结构进行任何修改。

1 个答案:

答案 0 :(得分:0)

在分配之前首先将行中的值与DBNULL进行比较:

Dim tmp_closed_at_Date As Date
Dim closed_at_Date As String


If Not IsDbNull(dt.Rows(i)("closed_at")) Then  
     tmp_closed_at_Date = directcast(dt.Rows(i)("closed_at"), datetime)
     closed_at_Date = tmp_closed_at_Date.ToString("yyyy-MM-dd HH:mm:ss")
End If