我在.NET桌面應用程序中包含200多個文本框。我想將它們插入到它們各自的4個數據庫表中。現在我應該如何使用數據集& DataAdapter來做到這一點?使用DataSet插入新記錄(.net c#ado.net)
我的意思是通常這將是流:
- 填充使用DataAdapter.Fill方法(數據集, 「數據表」)數據集;
- 操縱DataSet的數據
- DataAdapter.Update(Dataset,「DataTable」)將內容更新回數據庫。
但在這裏我只想插入在3級不同的表的新紀錄。
我認爲的方法是 1.以編程方式創建一個包含3個數據表的數據集。 2.將200個文本框綁定到這些數據的相應列 3. dataAdapter.Update(dataSet,dataTable.TableName);
我對不對?
dataAdapter.Update(dataSet,dataTable.TableName);工作?因爲,我的每個dataTable將只有一個記錄。 (將插入的新記錄與表單的200個文本框結合在一起),其中數據庫表將具有數千條記錄。如果我做dataAdapter.Update(dataSet,dataTable.TableName);它會刪除所有其他記錄並單獨插入這一個嗎?
我只是想插入一個新的記錄(沒有取得其他1000個記錄到我的數據集)到Database.Table使用數據集。
我覺得我的查詢是不明確的。我編輯它。我想插入一條新記錄(不需要將其他1000條記錄提取到我的數據集中)。 所以,當我做dataAdapter.Update(dataSet,dataTable.TableName);我會造成問題,我猜。 – claws 2009-10-26 08:27:18
這是否 foreach(dataTable dataTable in dataSet.Tables) dataAdapter.Update(dataSet,dataTable.TableName);有用嗎?我沒有嘗試,但通過看它,我覺得它不會工作,因爲。使dataAdapter.Update()語句可以工作。必須有相應的插入,更新,刪除查詢。但是當我們實例化dataAdapter時,我們使用SELECT查詢單個表的權利?所以,它只適用於該表,而不適用於其他表。 – claws 2009-10-27 20:04:13
你是對的:我錯過了dataAdapter的定義。 – andreas 2009-10-27 21:49:27