Database visual basic:查找匹配字符串

Database visual basic:查找匹配字符串,database,visual-studio-2010,Database,Visual Studio 2010,我正在使用VB 2010 Express访问.mdb格式的数据库。 我想找到包含特定字符串和数字的行,所以我编写了这个while循环。我使用If语句来确保循环不超过最大行数(MaxRows)并抛出错误。它不断给出的结果是:“找不到记录”,即使数据库中确实存在字符串。我做错了什么 注意:inc用于增加行数。消息框仅用于查看变量值 代码: Dim lpn As String Dim lpn2 As String inc = 0 lpn = TextBox5.Te

我正在使用VB 2010 Express访问.mdb格式的数据库。 我想找到包含特定字符串和数字的行,所以我编写了这个while循环。我使用If语句来确保循环不超过最大行数(MaxRows)并抛出错误。它不断给出的结果是:“找不到记录”,即使数据库中确实存在字符串。我做错了什么

注意:inc用于增加行数。消息框仅用于查看变量值

代码:

    Dim lpn As String
    Dim lpn2 As String


    inc = 0

    lpn = TextBox5.Text

    lpn2 = ds.Tables("RegisteredCarsDataSet").Rows(inc).Item(7)

    MsgBox(lpn & " " & lpn2 & " ") 

    While lpn <> lpn2

        If inc <> MaxRows - 1 Then
            inc = inc + 1
            lpn2 = ds.Tables("RegisteredCarsDataSet").Rows(inc).Item(7)

            MsgBox(lpn & " " & lpn2)
        Else
            MsgBox("No record found.")
            Exit While
        End If
    End While

    TextBox1.Text = ds.Tables("RegisteredCarsDataSet").Rows(inc).Item(1)
    TextBox2.Text = ds.Tables("RegisteredCarsDataSet").Rows(inc).Item(2)
    TextBox3.Text = ds.Tables("RegisteredCarsDataSet").Rows(inc).Item(3)
    TextBox4.Text = ds.Tables("RegisteredCarsDataSet").Rows(inc).Item(4)
    ComboBox1.Text = ds.Tables("RegisteredCarsDataSet").Rows(inc).Item(5)
    ComboBox2.Text = ds.Tables("RegisteredCarsDataSet").Rows(inc).Item(6)
    TextBox5.Text = ds.Tables("RegisteredCarsDataSet").Rows(inc).Item(7)
Dim lpn作为字符串
作为字符串的Dim lpn2
inc=0
lpn=TextBox5.Text
lpn2=ds.Tables(“RegisteredCarsDataSet”).Rows(inc).项(7)
MsgBox(lpn&&&lpn2&)
而lpn-lpn2
如果inc MaxRows-1,则
inc=inc+1
lpn2=ds.Tables(“RegisteredCarsDataSet”).Rows(inc).项(7)
MsgBox(lpn&“”&lpn2)
其他的
MsgBox(“未找到任何记录”)
退出时
如果结束
结束时
TextBox1.Text=ds.Tables(“RegisteredCarsDataSet”).Rows(inc).项(1)
TextBox2.Text=ds.Tables(“RegisteredCarsDataSet”).Rows(inc).项(2)
TextBox3.Text=ds.Tables(“RegisteredCarsDataSet”).Rows(inc).项(3)
TextBox4.Text=ds.Tables(“RegisteredCarsDataSet”).Rows(inc).项(4)
ComboBox1.Text=ds.Tables(“RegisteredCarsDataSet”).Rows(inc).项(5)
ComboBox2.Text=ds.Tables(“RegisteredCarsDataSet”).Rows(inc).项(6)
TextBox5.Text=ds.Tables(“RegisteredCarsDataSet”).Rows(inc).项(7)

Offtopic,但您是否考虑过发出直接sql命令,如“select*from mytable where myfield,如'mystring'”?或者至少对具有类似条件的记录集发出find命令?我不熟悉sql,这是我第一次使用数据库。我用我知道的唯一方法。但是如果你知道更好的方法,请告诉我。如果我使用“select*from mytable where myfield like‘mystring’”,我应该将结果保存在一个新的数据集中,这是正确的吗?我是的,但实际上我没有直接使用VB数据集,因此我不能给出很好的指导。(这就是我只在这里发表评论的原因之一。)