国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > ASP > 正文

ASP中實(shí)現(xiàn)執(zhí)行定時(shí)任務(wù)的方法

2024-05-04 11:05:40
字體:
供稿:網(wǎng)友

在系統(tǒng)中定期執(zhí)行任務(wù)是一個(gè)常見的功能,那么ASP中實(shí)現(xiàn)執(zhí)行定時(shí)任務(wù)的方法大家都了解嗎?錯(cuò)新技術(shù)頻道小編推薦大家來js.VeVb.com進(jìn)行學(xué)習(xí)哦。

一個(gè)很常見的 ASP 問題 : “如何定時(shí)工作流程執(zhí)行網(wǎng)頁?”, 之所以會(huì)問這個(gè)問題大部分是因?yàn)楣芾韱T可能會(huì)利用一個(gè) ASP 網(wǎng)頁來作數(shù)據(jù)庫維護(hù)的動(dòng)作, 如備份, 在 Windows NT 平臺有一個(gè)方法可以做工作流程, 那就是 AT 指令 + Schedule 服務(wù),就是計(jì)劃任務(wù), 但很可惜的是你并沒有法度在命令列 (Command-Line) 執(zhí)行 ASP 網(wǎng)頁 。

當(dāng)然你可以在命令列執(zhí)行 IE 并告訴它要求執(zhí)行的網(wǎng)頁, 例如:
c:/program files/internet explorer/iexplore.exe http://localhost/mypage.asp,
不過, 這絕對不是大部分的網(wǎng)站管理者所要的方法, 因?yàn)檫@必須要開啟瀏覽器, 花費(fèi)許多的系統(tǒng)資源, 此外, 還有一個(gè)缺點(diǎn), 那就是執(zhí)行 ASP 網(wǎng)頁有逾時(shí)時(shí)間 (Timeout), 如果你要執(zhí)行許多的流程工作, 你可能要更改 Timeout 時(shí)間, 太麻煩了,直接忽視。

在這一篇文章要介紹的是使用 WSH (Windows Scripting Host) 的解決方案。

假設(shè)你現(xiàn)在有一個(gè)廣告輪撥系統(tǒng), 你想將檢查廣告到期日這件工作自動(dòng)化每天凌晨執(zhí)行, 也就是當(dāng)一則廣告過期了, 便將其廣告狀態(tài)更改為停用, 我們先來看看資料表 AdInfo 字段 。

?

復(fù)制代碼 代碼如下:

AdId 廣告代碼 INT
AdName 廣告名稱 VARCHAR(64)
ValidToDate 廣告到期日 DateTime
AdStatus 廣告狀態(tài) INT (0為停用, 1為進(jìn)行)

?

接下來看看如何用 WSH, 基本上和 ASP 的寫法是一樣的除了不需加上 ASP 分隔符,不能使用Server.,存盤的擴(kuò)展名為 .vbs 。

由于不是使用 asp.dll , 因此沒有 ASP 的對象模式并不適用,所以這樣寫Server.CreateObject會(huì)報(bào)錯(cuò)。

利用 WSH 作定時(shí)工作流程 :

復(fù)制代碼 代碼如下:

'請勿用 Server.CreateObject
Set oConn = CreateObject("Adodb.Connection")
oConn.Open YourConnString
sSQL = "update AdInfo set AdStatus=0 " _
?? & "where ValidToDate< ='" & Date & "'"
oConn.Execute(sSQL)
oConn.Close
Set oConn = Nothing

?

存為 c:/scripts/updateadstatus.vbs,
WSH 有兩個(gè)版本, 一為窗口版 (wscript.exe), 一為命令列版 (cscript.exe),。

在這個(gè)例子我們將使用 (cscript.exe), 你可以在 DOS 命令列下執(zhí)行 :

復(fù)制代碼 代碼如下:

c:/>cscript c:/scripts/updateadstatus.vbs

?

接著你可以到數(shù)據(jù)庫下查詢資料是否更新, 在實(shí)際的應(yīng)用上, 建議你使用批此檔來區(qū)分不同時(shí)段的工作, 好比說我會(huì)創(chuàng)造一支名為 dailytask.bat 的批次檔來執(zhí)行所有的每日例行工作, 如此一來, 我只需將所有每日應(yīng)執(zhí)行的 script 放到這支批次檔即可, 然后利用 AT Command 或是 SQL Server Agent 定時(shí)每日執(zhí)行 dailytask.bat 。

強(qiáng)烈建議使用 SQL Server Agent, 這會(huì)比使用 AT Command 來得有效率且穩(wěn)定!

設(shè)定 SQL Server Agent 你可以執(zhí)行 Enterprise Manager, 展開后會(huì)看到這樣的畫面。

復(fù)制代碼 代碼如下:

鼠標(biāo)右點(diǎn) Jobs, 選擇 New Job 。
選擇 Step 按 New 。
指定 Step Name , Type 請選擇 Operating System Command, 并設(shè)定執(zhí)行的 Command 。
選擇 Schedule 設(shè)定你的流程。

?

下面是數(shù)據(jù)庫的截圖:

以上就是錯(cuò)新技術(shù)頻道小編介紹的ASP中實(shí)現(xiàn)執(zhí)行定時(shí)任務(wù)的方法,希望能幫助到大家學(xué)習(xí),如果想了解更多相關(guān)內(nèi)容可上js.VeVb.com咨詢哦。

發(fā)表評論 共有條評論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 江永县| 海原县| 石林| 汽车| 丰原市| 台山市| 泸定县| 墨脱县| 荔浦县| 洞头县| 白水县| 深圳市| 扎赉特旗| 五莲县| 太仆寺旗| 长寿区| 绩溪县| 河曲县| 祁阳县| 治县。| 桐城市| 同仁县| 新河县| 桐城市| 岐山县| 仙桃市| 民县| 南涧| 桃源县| 宣武区| 元朗区| 庆元县| 鹿泉市| 南川市| 揭东县| 石柱| 华容县| 合肥市| 登封市| 湟源县| 徐州市|