如何使用OleDbDataReader显示我的查询数据



我知道这对于你们大多数人在这个网站上散步,但对于像我这样的n00b现在给我一点麻烦,我所要做的就是编程我的"查询"按钮显示/搜索数据从我的访问文件基于在相应的文本框中输入的字符串。例如,如果您试图搜索所有名为Eric的员工的访问数据库。我希望能够在我的FirstName txtbox中输入Eric,并在我的访问文件中显示所有名为Eric的员工的列表。到目前为止,我有一些代码运行没有错误,但当我点击按钮,无论在我的文本框消失。我肯定我错过了一些东西,只是需要一些指导。这是我到目前为止的代码。用VB做这个,请帮忙!!

Using con = New OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;Data Source=C:UsersEricDocumentsFadv.accdb")
        Dim SQL As String = ("SELECT FirstName, LastName FROM info")
        Dim cmd As New OleDbCommand(SQL, con)
        con.Open()
        Dim reader As OleDbDataReader
        reader = cmd.ExecuteReader()
        While reader.Read()
            txtFirstName.Text = reader(0).ToString()
            Console.WriteLine(" {0} = {1}", reader("FirstName"), 
                reader("LastName"))
            txtFirstName.Text = reader(0).ToString()
        End While
        reader.Close()
End Using
Using con = New OleDbConnection("Provider= blah blah blah...")
    Dim SQL As String = "SELECT FirstName, LastName FROM info WHERE FirstName = ?"
    ' OleDbCommand supports Dispose
    Using cmd As New OleDbCommand(SQL, con)
        cmd.Parameters.AddWithValue("@p1", txtWhere.Text)
        con.Open()
        Dim reader As OleDbDataReader
        reader = cmd.ExecuteReader()
        ' a listbox to store more than one result
        lstResults.Items.Clear          ' clear old stuff
        While reader.Read()
            lstResults.Items.Add(String.Format("{0}, {1}",
                 reader.Item(1).ToString, reader.Item(0).ToString())
            Console.WriteLine(" {0} = {1}", reader("FirstName"), 
                reader("LastName"))
        End While
        reader.Close()
   End Using
End Using

可以修改SQL来搜索像这样的名字,这样您就可以同时找到Eric、Erin和Erica。您还可以使用其他数据访问方法来简单地触发查询并将一些控件(如DataGridView)绑定到结果。

最后,参数保护你不被Little Bobby Tables访问。学习他们,了解他们,爱他们。

相关内容

  • 没有找到相关文章

最新更新