iT邦幫忙

0

程式自動更新DB資料

GJ 2014-08-28 17:18:044183 瀏覽

ASP.NET+MS SQL
用意是每天半夜能更新DB裡的的某個欄位
原本是想說用AJAX timer做
但是試驗好像不太對,沒辦法更新
GOOGLE是說可以用IIS或DB內寫排程
請問這兩種方式有哪位高手可否提供一下參考
感謝Orz

0
外獅佬
iT邦大師 1 級 ‧ 2014-08-29 08:49:05
最佳解答

寫一支Windows Service來做這件事是不是比較恰當??

看更多先前的回應...收起先前的回應...
外獅佬 iT邦大師 1 級 ‧ 2014-08-29 08:51:11 檢舉

寫法跟寫console application一樣,測試完畢之後,把專案屬性改成windows service就好了

GJ iT邦研究生 5 級 ‧ 2014-08-29 09:00:07 檢舉

那是要放在DB主機跑還是IIS 主機上跑好?汗

外獅佬 iT邦大師 1 級 ‧ 2014-08-29 09:02:27 檢舉

當然是DB主機....
即使網路斷線,他也不會失敗

外獅佬 iT邦大師 1 級 ‧ 2014-08-29 09:03:02 檢舉

放在DB主機還有另一個原因,可以透過Shared Memory連接,速度比較快

GJ iT邦研究生 5 級 ‧ 2014-08-29 09:03:04 檢舉

w大說的可是這種方式?

http://goo.gl/HczE4u

外獅佬 iT邦大師 1 級 ‧ 2014-08-29 09:07:05 檢舉

you got it

8
player
iT邦大師 1 級 ‧ 2014-08-28 17:24:28

用IIS寫排程? 不太正確
正確的寫法應該你做動態網頁去存取資料庫, 然後利用OS做排程(例如Windows的工作排程, 配合wget這隻工具使用)
http://gnuwin32.sourceforge.net/packages/wget.htm

至於資料庫裡的排程
大多是要寫預存程序
每種資料庫設定排程的方法都不太一樣
以MS的SQL Server為例是SQL Server Agent (記得服務要開)

答案很棒!

既然是資料庫分內的工作,就該由DB來完成,設定JOB來做吧。
原PO享用「網頁程式」來做自動排程,就算可以做到,也是一個"不聰明"的點子(因為你什麼都不會,「只能」用網頁程式吧?)

手邊如果有幾本資料庫的書,可以翻翻看 :-)

2
danking
iT邦研究生 2 級 ‧ 2014-08-28 22:30:31

1.寫個程式來對 DB 做 Update,再配合系統本身的工作排程
2.寫個服務裡面用timer來抓取時間, 到達設定的時間就進行 DB 的 Update

mutualpak iT邦研究生 5 級 ‧ 2014-08-29 08:49:48 檢舉

那就試看用觸發程序

0
erictaiwan
iT邦新手 1 級 ‧ 2014-08-29 16:01:44
  1. 最簡單的方式: 本人目前使用中。
    .NET 程式寫好後, 利用 wget + 工作排程作業
    網址: http://gnuwin32.sourceforge.net/packages/wget.htm
  2. 企業級專業排程工具: 手邊有一套上線系統有整合此工具程式,可於不同時間排程執行程式。
    Quartz Enterprise Scheduler .NET
    網址: http://www.quartz-scheduler.net/

我要發表回答

立即登入回答