条件表达式中的数据类型不匹配(VB)

时间:2013-11-20 17:33:03

标签: sql vb.net database-connection

每当我尝试从访问数据库读取信息时,我似乎继续在条件表达式中出现“数据类型不匹配”错误,数据库中的数据正被添加到列表视图中。以下是代码:

 POStable.Clear()

    connection1.ConnectionString = "Provider = Microsoft.Jet.OLEDB.4.0;Data Source=Shop.mdb"
    connection1.Open()
    POSAdapter = New OleDb.OleDbDataAdapter("Select * from items where barcode = '" & txtBarcode.Text & "'", connection1)
    CommandBuilder = New OleDb.OleDbCommandBuilder(POSAdapter)
    POSAdapter.Fill(POStable)             ' ****
    connection1.Close() 


    If POStable.Rows.Count = 0 Then
        MsgBox("Item does not exist")
    Else
        Dim objListItem As ListViewItem
        objListItem = ListViewPOS.Items.Add(POStable.Rows(0)(1).ToString)
        objListItem.SubItems.Add(1)
        objListItem.SubItems.Add("£" & (POStable.Rows(0)(2).ToString))
    End If 

BOLD上面的部分是我收到错误的地方。我连接到一个包含一个名为items的表的数据库。在该表中,只有一行和4列用于测试:条形码,项目,价格和数量。

我希望有人能帮我解释为什么我有这个错误? 感谢

1 个答案:

答案 0 :(得分:1)

如果您的文本框包含illigal字符,请尝试此操作

POSAdapter = New OleDb.OleDbDataAdapter("Select * from items where barcode = [" & txtBarcode.Text & "]", connection1)