作者wwe90425 (撒尿牛丸)
看板C_Sharp
標題[問題] update時速度很慢
時間Wed May 22 23:21:35 2013
各位前輩好
小弟最近幫公司做個小型盤點系統
大部分功能都完成了
但最近測試時發現
再更新明細時速度會變慢
小弟語法是這樣寫的
ex:
for(i=0; i<gridview1.rows.count() ; i++)
{
update 資料表 set 要更新的欄位 = 'xx' where.........
}
gridview差不多有2 3百筆資料
因為老闆要求條碼刷一筆資料
就要馬上更新那一筆到資料庫
所以無法用字串相加
(ex: updatestr += update 資料表 set 要更新的欄位 = 'xx' where.........
最後在一起update)
的方式來做
但是這樣子做update時速度會很慢
請問有無更好的方法可以解決?
還是這是跟iis的硬體設備或網路頻寬有關係?
請各位前輩幫忙解惑 感恩
--
燈不點不亮 話不說不明
我們之間沒什麼好說了 你可以關燈了
Turn on the light~
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 1.163.236.68
※ 編輯: wwe90425 來自: 1.163.236.68 (05/22 23:23)
1F:→ Ansaga:update 200筆應該不會很慢啊@@? 05/23 01:55
2F:→ Ansaga:你是一次update一筆還是一次update整個gridview啊? 05/23 01:56
3F:推 kad:總覺得怪怪的, 刷條碼要即時更新1筆, 又說要同時更新200筆? 05/23 11:01
4F:→ kad:另外如果更新語法的條件是pk或是index應該不至於很慢 05/23 11:02
5F:→ kad:建議可下log看看每一筆更新的間隔時間 05/23 11:03
6F:→ kad:另外猜測有可能是因為 gridview 的 viewstate size 的問題 XD 05/23 11:05
7F:→ Eleganse:為何目標是"條碼刷一筆就更新一筆" 05/23 11:38
8F:→ Eleganse:而你卻把SQL更新字串寫在for迴圈裡 05/23 11:38
9F:→ Eleganse:難道你的條碼機叫 for ~"~ 05/23 11:39
10F:→ Eleganse:感覺上這樣寫一開始工作時會很順 然後越刷越慢 05/23 11:43
11F:→ ssccg:應該只更新有改的那筆吧,為什麼要update整個gridview的row? 05/23 11:45
12F:推 yes302:讀Key出來,找到data,直接做單筆update!!! 07/09 03:43
13F:→ yes302:若是兩千萬筆~你該如何是好? 所以說~~嗯嗯嗯 07/09 03:43