我有一個用於訪問者登錄的信息亭,當他們登錄時發送數據到SQL數據庫。然後我將這些數據放入一個數據集中,然後放入監視應用程序的datagridview中。這些數據每15秒刷新一次。更新數據庫從sql C#
如何更新此數據集/ datagridview而不必每次都抓取所有數據?最初的拉力約爲500線,我不想每次都拉500。我想檢查是否有新記錄並將它們添加到數據集中。
這裏就是我得到的數據的代碼
private void UpdateUsers()
{
SqlConnection conn = ConnectSQL("10.100.25.250", "bhi_kiosk");
var query = new SqlCommand("SELECT * FROM Users WHERE uStatus=1", conn);
SqlDataReader read = null;
listView1.Items.Clear();
conn.Open();
read = query.ExecuteReader();
var dt = new DataTable();
dt.Load(read);
query.Connection.Close();
dataGridView1.DataSource = dt;
}
所以你想從服務器獲取更新的數據(這樣你就可以在datagridview中顯示它),而無需在服務器上運行查詢?是對的嗎?只要確保我沒有誤讀這個問題。 – David
保持跟蹤最後一個查詢時間,然後將您的查詢更改爲'SELECT * FROM Users WHERE uStatus = 1 AND signInTime> @ lastRunTime' – Paddy
您是說當他們登錄時,您提取所有數據,然後從該點轉發,你想保持什麼沒有更新,只得到新的東西?你想拉入的東西是更新記錄和新記錄還是隻是新記錄? – Yatrix