作者: X-Engineer 時間: 2016-8-2 18:00 標題: Selecting record to display in DataGrid in VB
本帖最後由 X-Engineer 於 2016-8-2 18:10 編輯
請問有咩錯?
想用 textbox.text 在 Access Database (.accdb) 內 search record, 然後顯示在 DataGridView.
Test Result : Error
An unhandled exception of type 'System.Data.OleDb.OleDbException' occurred in System.Data.dll
Additional information: No value given for one or more required parameters.
Thanks a lot!!!!!
Here's my code :
- Private Sub btnName_Click(sender As Object, e As EventArgs) Handles btnName.Click
- con = New OleDbConnection("Provider=Microsoft.ACE.OLEDB.12.0;" + "Data Source=|DataDirectory|\TEST.accdb")
- con.Open()
- Dim ds As New DataSet
- Dim dt As New DataTable
- ds.Tables.Add(dt)
- Dim da As New OleDbDataAdapter
- da = New OleDbDataAdapter("SELECT * FROM Person WHERE EnglishName LIKE " + txtSearch.Text, con)
- da.Fill(dt)
- SearchDataGridView.DataSource = dt.DefaultView
- con.Close()
- End Sub
作者: snoopy11hk 時間: 2016-8-2 18:50
No value given for one or more required parameters.
即係唔夠 param...
作者: Charcoal99 時間: 2016-8-3 10:33
如果是 literal search, LIKE 後面項目要用 「'」 quote包住,
pattern search 的話可能更要在裡面再包一層「%」。
作者: X-Engineer 時間: 2016-8-3 15:44
如果是 literal search, LIKE 後面項目要用 「'」 quote包住,
pattern search 的話可能更要在裡面再包一層 ...
Charcoal99 發表於 2016-8-3 10:33
Thank you very much.
It works now.
- da = New OleDbDataAdapter("SELECT * FROM Person WHERE EnglishName LIKE '%" + txtSearch.Text + "%'", con)

