2013-10-04 73 views
0

我想查询DB1并在我的应用程序中填充所有条目到DB2中,但是,我遇到DB1为日期时间字段返回空白条目的问题。无法将空白日期字段导入MySQL数据库

当我的应用程序试图在数据读取,我得到一个异常:从类型转换“为DBNull”键入“日期”无效

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是第三方数据库,因此我无法对表结构进行任何修改。

+0

比较值赋值 – jerjer

回答

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 
+0

这是真棒感谢之前,首先为DBNull! – Riples

相关问题