2014-02-25 88 views
0

我有一个sqlite数据库和一个表,其中我有一个列的PIN作为一个文本,它是空的。 当我从数据库中得到它,并试图转换成一个字符串,它给我带来了一个异常,当投一个数字时,该值必须小于无穷大......原因是什么?如何避免这种异常?

+6

哪个异常到底是什么?也请包括一些代码。 –

回答

0

在像sqlite这样的数据库中,空字符串和null是两个不同的东西。看起来你可能会试图将你的PIN码转换为int或其他整数类型。如果PIN字段为空或DBNull,则此投射将失败,并列出您列出的例外。更复杂的事情,null != DBNull.Value,这是您的数据库查询可能会返回。

要检查这一点,您需要检查PIN字段对DBNull.Value,并且只有在您检查后才能投射。

参见:DBNull Class

参见:A similar SO question