2010-07-30 31 views
0

我有一個從MySQL數據庫表通過c#綁定的網格。有什麼方法可以在插入語句中顯示項目嗎?如果我用20行綁定一個網格,我需要將它們全部放入插入語句中,我可以將其保存爲.sql文件並在另一個數據庫中運行它。從網格獲取插入查詢

你的經驗會非常有幫助。

+0

你可能會通過行迭代,並建立自己的發言。 – Fosco 2010-07-30 17:46:38

回答

0

你可以通過循環訪問網格行並獲取每個單元格的值來完成它,但那樣做會很困難。你會更好只是具有DB通過做所概述這裏具有DB執行直接使用select語句插入語句工作:

http://www.sqlteam.com/article/using-select-to-insert-records

這是採取的結果以正常的方式選擇語句並插入到不同的表中。

編輯我的同事,誰比我聰明得多,想出如何從ViewState中獲得的基本數據表和按如下方式使用它(在VB - 你需要將它轉換成C#):

Dim tblRanked AS System.Data.DataTable = ViewState("tblRanked") 

For Each row As DataRow In tblRanked.Rows 
    db.ExecuteNonQuery("usp_AddRankingForUser", loginId, row("RequestID"), count) 
    'updates the depthead field for later use 
Next 

編輯 - 添加

這裏的另一種選擇,它類似於什麼樣子你問,和代碼片段肯定展示瞭如何通過行循環在DataGrid中獲得價值...

http://www.eggheadcafe.com/articles/20060513.asp

+0

感謝大衛,但實際存儲在視圖狀態?加上行(「RequestID」) - 該值來自哪裏? – Sharpeye500 2010-07-30 18:02:06

+0

ViewState包含頁面在上次發送給客戶端時的狀態信息。 (谷歌Viewstate找出它的內容)。在這種情況下,viewState包含DataGrid綁定到的System.Data.DataTable(名爲tblRanked)。在此代碼示例中,RequestId是底層DataTable中的一列。 – David 2010-07-30 18:27:15