利用 WSH 作定時工作排程(转自:LearnASP)

利用 WSH 作定時工作排程

一個很常見的 ASP 問題 : "如何定時工作排程執行網頁?", 之所以會問這個問題大部分是因為管理員可能會利用一個 ASP 網頁來作資料庫維護的動作, 如備份...等, 在 Windows NT 平台有一個方法可以做工作排程, 那就是 AT 指令 + Schedule 服務, 但很可惜的是你並沒有法度在命令列 (Command-Line) 執行 ASP 網頁

當然你可以在命令列執行 IE 並告訴它要求執行的網頁, 例如: c:\program files\internet explorer\iexplore.exe http://localhost/mypage.asp, 不過, 這絕對不是大部分的網站管理者所要的方法, 因為這必須要開啟瀏覽器, 花費許多的系統資源, No Good! 此外, 還有一個缺點, 那就是執行 ASP 網頁有逾時時間 (Timeout), 如果你要執行許多的排程工作, 你可能要更改 Timeout 時間, 哇! 太麻煩! No good!

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

WSH 的安裝

Windows 98, Windows 2000, IIS 4.0 已包含 WSH
WSH 包含在 IE 5.0 版本中
如果你是 Windows 95 使用者, 可以到微軟網站下載個別安裝程式
http://www.microsoft.com/msdownload/vbscript/scripting.asp
範例

假設你現在有一個廣告輪撥系統, 你想將檢查廣告到期日這件工作自動化每天凌晨執行, 也就是當一則廣告過期了, 便將其廣告狀態更改為停用, 我們先來看看資料表 AdInfo 欄位

AdId 廣告代碼 Int
AdName 廣告名稱 VarChar(64)
ValidToDate 廣告到期日 DateTime
AdStatus 廣告狀態 Int (0為停用, 1為進行)

先看看 ASP 怎麼做

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

接下來看看如何用 WSH, 基本上和 ASP 的寫法是一樣的除了

不需加上 ASP 分隔符號 <% %>
存檔的副檔名為 .vbs
由於不是使用 asp.dll , 因此沒有 ASP 的物件模式並不適用
無法使用伺服端包含, 因此一些 ADO 常數需自行宣告

'請勿用 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 有兩個版本, 一為視窗版 (wscript.exe), 一為命令列版 (cscript.exe), 在這個例子我們將使用 (cscript.exe), 你可以在 DOS 命令列下執行

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

接著你可以到 Query Analyzer 下查詢資料是否更新, 在實際的應用上, 建議你使用批此檔來區分不同時段的工作, 好比說我會創造一支名為 dailytask.bat 的批次檔來執行所有的每日例行工作, 如此一來, 我只需將所有每日應執行的 script 放到這支批次檔即可, 然後利用 AT Command 或是 SQL Server Agent 定時每日執行 dailytask.bat

強烈建議使用 SQL Server Agent, 這會比使用 AT Command 來得有效率且穩定! 設定 SQL Server Agent 你可以執行 Enterprise Manager, 展開後會看到這樣的畫面

滑鼠右點 Jobs, 選擇 New Job
選擇 Step 按 New
指定 Step Name , Type 請選擇 Operating System Command, 並設定執行的 Command
選擇 Schedule 設定你的排程
希望這篇文章對你有幫助!

时间: 2024-09-20 01:12:36

利用 WSH 作定時工作排程(转自:LearnASP)的相关文章

利用WSH作定時工作排程

利用 WSH 作定時工作排程 一個很常見的 ASP 問題 : "如何定時工作排程執行網頁?", 之所以會問這個問題大部分是因為管理員可能會利用一個 ASP 網頁來作資料庫維護的動作, 如備份...等, 在 Windows NT 平台有一個方法可以做工作排程, 那就是 AT 指令 + Schedule 服務, 但很可惜的是你並沒有法度在命令列 (Command-Line) 執行 ASP 網頁 當然你可以在命令列執行 IE 並告訴它要求執行的網頁, 例如: c:\program files

利用 WSH 作定时工作流程

定时 一个很常见的 ASP 问题 : "如何定时工作流程执行网页?", 之所以会问这个问题大部分是因为管理员可能会利用一个 ASP 网页来作数据库维护的动作, 如备份...等, 在 Windows NT 平台有一个方法可以做工作流程, 那就是 AT 指令 + Schedule 服务, 但很可惜的是你并没有法度在命令列 (Command-Line) 执行 ASP 网页 当然你可以在命令列执行 IE 并告诉它要求执行的网页, 例如: c:\program files\internet ex

单独的生产排程软件价值几何?有没有市场?

问题描述 单独的生产排程软件价值几何?随着设备自动化程度的提高,比如说生产线等等,生产管理趋于简单.再开发生产排程软件还有没有市场,有没有必要? 解决方案 解决方案二:没什么意思.早过气了.该饱和的饱和,没饱和的,由于有公开的源码,很容易内部修改,或随时找个人花点钱帮忙制作.解决方案三:没有单独的生产排程软件的.排产要考虑的东西太多太多,不是单单一个软件就能搞定的.解决方案四:生产排程说难不难,说简单也不简单---就像我刚工作时,维修班的老师傅跟我说的话.不过他说的是维修工作,原话好像是"好汉子

了解一点点:永凯APS物料管理及排程系统集成MES解决方案

APS系统可以整合了工艺BOM.物料需求计划.高级排程.产能预测.发运计划.甚至现场管理等一系列http://www.aliyun.com/zixun/aggregation/17496.html">附加功能的综合体.APS软件一定要是平台化.可快速客制化修改.通用化的APS产品很难面面俱到解决各行业的问题,而且越是考虑的行业多,越会导致系统参数很多,使用难度加大,系统友好性变差,计算效率降低,最终实施效果变差.同时,传统的排程软件很难发展壮大. 1,工厂排程负荷图:分析全厂负荷状态,识别

永凯APS先进智能规划排程

对永凯APS引擎不熟或者不了解他的一些运行规则也是在实施项目中导致经常不能正常运行不可忽视的因素,对永凯APS引擎的早期了解是整个项目实施运行的成功至关重要的因素,如果不了解永凯APS潜在的引擎因素和运行准则的话,这个团队可能会设计一个他预期所不能达到的一个模型,可能已经上线了,才发现这个解决方案并不能够达到他的效果,所以对引擎功能性的了解,认知也就是等于加重转化商业目标到建模之间的难度,结果许多项目都会浪费了时间又浪费了资源. 通常情况下永凯APS引擎都会分为两大类:第一,优化的 第二,基于其

永凯APS生产排程专家告诉您提升企业生产管理的方法

20世纪http://www.aliyun.com/zixun/aggregation/16333.html">90年代,有经验的APS客户开始努力提高库存规划的目标,作为APS过程的投入.传统上,规划输入用户创建和导出,所产生的经验,电子表格的生产计划排程,历史数据的依赖,和其他类似的解决方法,已成为现状.然而,那些实践提供了严格的限制,可以做生产排程的频率和范围的机会甚微,看到小部分的基础上分组的单级产品,无产能限制的数据,在任何给定的时间.否则,计算变得过于费时和复杂的支持,利用现有

【天池直播】同济梁教授运筹学系列直播三--列生成2:万变不离其宗,强大的并行机排程!

鸠摩智靠着小无相功的内功,用少林72绝学打败了少林寺的大和尚,并行机排程,即列生成中的小无相功. 本次直播,我们且看并行机在人员排班,医疗卫生,车辆运输,航空排程,生产运作等方面的应用. 对并行机排程想要了解以及有任何疑问的同学,请在技术圈帖子留言,梁教授会统一解答哦~ 直播主题:列生成2--万变不离其宗,强大的并行机排程! 直播时间:11月9日 20:00 直播链接:点击查看 直播嘉宾: 梁哲 天池昵称梁哲 同济大学同济大学管理科学与工程教授博导,天池航空AI大赛冠军团队"同济经管组合优化&q

谈ERP系统的生产排程

制造业的http://www.aliyun.com/zixun/aggregation/29808.html">ERP系统应该以计划为核心,特别是生产计划如何合理的进行排产显得尤为重要.但如何实现生产计划为核心?我想,生产排程系统的实施,是对此问题的最好答复. 所谓"生产排程"通俗讲,是指生产计划和作业计划的统称.通常企业制定生产计划的过程一般分成两部分,首先是生成主生产计划,其次是根据主生产计划生成生产作业计划."主生产计划"一般来源于订单,部分企

高级计划排程系统以及APS的功能定义

IT信息技术(IT)的硬件和软件,使信息系统成为可能.术语的硬件包括装置及其他在信息处理中涉及的物质的东西,如电脑,工作站中,物理网络,以及数据存储和发送装置. "软件的计算机程序,它可以解释用户输入,并告诉硬件做什么. 文章参考的两个目标:首先是要查看以前的文学和识别可能存在的差距.二是要奠定了基础.在分析中使用理论.在第一部分中的APS系统的定义进行了讨论.第二部分介绍了生产规划和控制系统.文学的研究结果是为了产生一些通用的模型和结果如何创建和利益的预期使用时是在制造规划和控制程序. &qu