我試圖通過在文本框中輸入文本,然后使用SQL查詢數(shù)據(jù)庫,然后在datagridview中顯示結(jié)果,在數(shù)據(jù)庫中搜索特定值。這是代碼: Private Sub TextBox1_TextChanged(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles txtSearch.TextChanged Connection.Open() Dim dataTable As New DataTable Dim dataSet As New DataSet dataSet.Tables.Add(dataTable) Dim dataAdapter As New OleDbDataAdapter Dim SQLQuery As String SQLQuery = <sql> SELECT * FROM Students WHERE StudentFirstName = @StudentFirstName </sql> .Value dataAdapter = New OleDbDataAdapter(SQLQuery, Connection) dataAdapter.SelectCommand.Parameters.Add("@StudentFirstName", SqlDbType.Text).Value = txtStudentFirstname.Text dataAdapter.Fill(dataTable) dgrStudentDatabaseViewer.DataSource = dataTable.DefaultView ShowItems() Connection.Close()End Sub調(diào)用ShowItems()將刷新datagridview,這是它的代碼 Private Sub ShowItems() ' the following delcleration are used for displaying the contents of the table Dim dataAdapter As New OleDbDataAdapter Dim DataTable As New DataTable Dim DataSet As New DataSet Dim SQLQuery As String = <sql>SELECT * FROM Students</sql> DataSet.Tables.Add(DataTable) dataAdapter = New OleDbDataAdapter(SQLQuery, Connection) dataAdapter.Fill(DataTable) ' fills the content from the database into the table in vb net dgrStudentDatabaseViewer.DataSource = DataTable.DefaultView Connection.Close()End Sub此刻,當(dāng)我嘗試搜索時(shí),什么也沒有發(fā)生,datagridview的內(nèi)容仍然保持不變。我認(rèn)為這可能與我的SQL Query的XML文字有關(guān),但無法弄清楚。提前致謝。
3 回答

素胚勾勒不出你
TA貢獻(xiàn)1827條經(jīng)驗(yàn) 獲得超9個(gè)贊
它可以更好,更簡單,更少的數(shù)據(jù)庫流量。這取決于應(yīng)用程序。只需添加/編輯基本項(xiàng)目的應(yīng)用程序的一部分即可使用它;將多個(gè)表(例如Order,OrderItems,ServiceLineItem等)聯(lián)接在一起的另一部分無法使用它。因此,對于多個(gè)表,取決于它們之間的關(guān)聯(lián)方式。簡單的標(biāo)頭詳細(xì)信息仍然可以工作,而不是數(shù)據(jù)集。我通常有2個(gè)不同的類在Transaction中處理每個(gè)類。如果基本查詢?yōu)?code>SELECT *...,并且代碼在刪除,更改后重新運(yùn)行該查詢,則適配器可能更有效。

慕萊塢森
TA貢獻(xiàn)1810條經(jīng)驗(yàn) 獲得超4個(gè)贊
建議使用dataadapter對其進(jìn)行更新,而不是查詢新的更新字符串,對嗎?猜猜我會(huì)整夜將其更改為上面的示例:)
- 3 回答
- 0 關(guān)注
- 604 瀏覽
添加回答
舉報(bào)
0/150
提交
取消