从VB.net中查找数据库中的特定值

时间:2014-02-25 14:50:14

标签: sql database vb.net ms-access data-binding

我想从Access数据库中找到特定值。然后将此值作为验证的一部分进行操作(将用户输入的值与数据库中的最小值和最大值进行比较)

我可以从数据库中获取数据,但我似乎无法填充数据表。我希望用户输入主键,然后当单击该按钮时,SQL语句使用该输入来查找值,然后将该值放入数据表并在文本框中吐出该值。我想如果我可以将它吐出正确的值,那么我可以将值放入一个我可以操作的变量中。

我不需要更改数据库中的数据我只需要收集值以验证用户输入的数据。这是我到目前为止的代码。

 Private Sub btnValidate_Click_1(sender As System.Object, e As System.EventArgs) Handles btnValidate.Click

    Dim ds As New DataSet
    Dim da As OleDb.OleDbDataAdapter

    dbConnect.ConnectionString = "Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:\Users\crabara\Desktop\Project Alpha 3\MDB.accdb;Persist Security Info=False;"
    dbConnect.Open()

    da = New OleDb.OleDbDataAdapter("SELECT MoldVinylWeightMin FROM PROCESS_INFO WHERE PCRNumber =" & txtPcr.Text, dbConnect)

    da.Fill(ds, "MinWeight")


    TextBox1.Text = ds.Tables("MinWeight").Rows(0).Item(0)

End Sub

现在它抛出错误“条件表达式中的数据类型不匹配”。任何帮助都会很棒,我找不到太多关于此的信息。

1 个答案:

答案 0 :(得分:2)

如果PRCNumber是数据库中的数字类型,则无需引用它

so:  PCRNumber ='" & txtPcr.Text & "'"
  becomes 
 PCRNumber = " & txtPcr.Text