错误:从类型DBNull到类型字符串的转换无效

时间:2011-07-29 13:19:32

标签: vb.net ms-access-2003

我再来一个问题。请帮我这样做。我试图从数据库中获取数量使用列表框中的选择。我收到了listbox1的回答。如果我在listbox1中选择了该项,则数量将显示在textbox1中。但在这个相同的代码不适用于带有textbox4的listbox2 ..这里我给出了代码......

 $Con.open()
 $Dim cd as new oledb.oledbcommand("Select Quantity from tlist where tool_name"& "'"listbox2.selecteditem & "'" & "", con)
 $dim rs as oledb.oledbdatareader
 $do while rs.read
 $textbox4.text=(rs("Quantity))
 $loop
 $con.close

这里我得到的错误是“从类型DBNull转换为类型字符串无效”Plz让我知道我该怎么做。??

1 个答案:

答案 0 :(得分:2)

有一些问题。

  1. 您的查询有点偏。它目前读取从tlist中选择数量,其中tool_name'valueOfListbox2'“。它应该读取从tlist中选择数量,其中tool_name ='valueOfListbox2'
  2. 您获取空值并且在写入值之前没有检查空值返回,因此错误。您可以使用以下IF语句来验证您的值不为null:

    如果不是IsDbNull(rs(“数量”))那么

  3. 此外,您在“数量”附近缺少双引号。