我試圖通過在文本框中輸入文本,然后使用SQL查詢數據庫,然后在datagridview中顯示結果,在數據庫中搜索特定值。這是代碼: 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調用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此刻,當我嘗試搜索時,什么也沒有發生,datagridview的內容仍然保持不變。我認為這可能與我的SQL Query的XML文字有關,但無法弄清楚。提前致謝。
3 回答

素胚勾勒不出你
TA貢獻1827條經驗 獲得超9個贊
它可以更好,更簡單,更少的數據庫流量。這取決于應用程序。只需添加/編輯基本項目的應用程序的一部分即可使用它;將多個表(例如Order,OrderItems,ServiceLineItem等)聯接在一起的另一部分無法使用它。因此,對于多個表,取決于它們之間的關聯方式。簡單的標頭詳細信息仍然可以工作,而不是數據集。我通常有2個不同的類在Transaction中處理每個類。如果基本查詢為SELECT *...
,并且代碼在刪除,更改后重新運行該查詢,則適配器可能更有效。
- 3 回答
- 0 關注
- 607 瀏覽
添加回答
舉報
0/150
提交
取消