2015-10-27 202 views
0

我是VB.NET的新手,所以請隨身攜帶!VB.NET SQL Server連接

我有一個小型的Windows窗體項目,帶有一個SQL類,它連接到我們的SQL Server數據庫以執行簡單的選擇/更新查詢。

我有一個簡單的窗體和一個按鈕,當按下它時,將運行一個選擇查詢來填充DataGridView。

查詢在某個表的數據庫中查找給定列中的某個值,並返回匹配的記錄。

這一切都適用於我的樣本數據集。如果我運行查詢(源表中沒有匹配的值),則DGV爲空。如果關閉項目,請向源表添加一些匹配字段,重新打開項目並再次運行,DGV將填充新的匹配記錄。

問題來自在程序打開時修改源表。如果我運行沒有匹配記錄的查詢,則DGV爲空。但是,如果我添加了一些匹配字段並再次重新運行查詢(不關閉程序),那麼在我關閉並重新打開該項目之前,DGV將保持空白狀態?

是否有一些自動緩存發生,我需要刪除?

在此先感謝

+1

您可以發佈您的代碼?沒有看到它很難幫助。 – Fred

+1

你是什麼意思「再次運行查詢」?你是databinding gridview? – johnyTee

+0

您如何告訴DGV數據已更改?這樣做的標準方法是通過BindingSource將DGV數據綁定到數據集。在這種情況下,數據更新時,網格會自動更新。 – peterG

回答

0

您是否嘗試過更改數據源? 試試這個:

Dim strCN As String = My.Settings.InovaConnectionString 
Dim cn As New SqlClient.SqlConnection(strCN) 
Dim ds As New DataSet 
Dim DataAdapt As New SqlClient.SqlDataAdapter("SELECT Code, Name, City FROM CUSTOMERS where Nome_Cliente like 'Carl%' ", cn) 
DataAdapt.Fill(ds, "CUSTOMERS") 
CUSTOMERSDataGridView.DataSource = ds.Tables("CUSTOMERS")