※ 引述《skitty (aki)》之銘言:
: 我要寫一個功能是去讀網頁回傳的資料
: 再寫到資料庫裡
: 回傳給查詢者
: 資料量很大也常常需要更新
: (類似商品庫存量一直變動)
: 目前卡在如果有新商品出現
: 我需要去檢查資料庫有沒有這個商品
: 來決定下insert或update
: 變成每個商品都要去連一次資料庫效能很差
: 目前有三個方向但不是很確定:
: 1. google說可以把指令串在一起一次執行
: 變成"比對…… insert……比對……update"
: 但這樣指令會變成很長一串字串
: 這樣算是好的解法?
: 而且如果商品名稱有 ' 出現
: 指令就不行了
: 2.每次都把資料庫舊資料砍掉
: 在記憶體生成新資料的table
: 再塞新資料進去
: 3.寫一支SP
: 但這樣每次還是要開資料庫連線
: 執行端是C#程式暫且在這裡發問
: 若覺得不恰當我再去DATABASE問 謝謝
在提升後端效能的前提下
你應該要思考幾件事情
1.目標是甚麼
現在執行一次要多久時間? 預計提升多少執行速度?
2.瓶頸在哪裡
資料庫或是網頁回傳的速度 還是比對的方式不好?
3.比對要在哪裡做
在sqlcommand 在C#裡 還是抓資料的時候就可以先用jquery做篩選?
4.一次可以比對幾筆
一筆 or 很多筆 如果要比對很多筆 是要非同步或是要平行處理嗎?
要先把資料抓出來轉成List提升比對速度嗎?
我是覺得問題應該不在資料庫連線的部分
sqlcommand沒有很複雜的前提下 要很明顯再提升執行效率的機會不高