您好,我希望每天早上9点运行以下代码。基本上,代码将读取每行的txt文件。它将处理并插入到Mysql表中。我该如何做到这一点?我找到了以下Make server automatic run asp-script every day,但它无效。请帮忙。
<%
strFileName = "database/testdata.txt"
Set fso = Server.CreateObject("Scripting.FileSystemObject")
set fs = fso.OpenTextFile(Server.MapPath(strFileName), 1, true)
if not fs.AtEndOfStream then
Do while not fs.AtEndOfStream
strRow = fs.ReadLine
sDate = Mid(Trim(strRow), 1, 8)
Set rstTMClk1 = server.CreateObject("ADODB.RecordSet") '=== Transfer from file to TMCLK1
sSQL = "select * from TMCLK1 '"
rstTMClk1.Open sSQL, conn, 3, 3
if rstTMClk1.eof then '=== To avoid duplicates
sSQL = "insert into TMCLK1 (DT_WORK) "
sSQL = sSQL & "values ("
sSQL = sSQL & "'" & fdate2(sDate) & "'"
sSQL = sSQL & ") "
conn.execute sSQL
end if
pCloseTables(rstTMClk1)
Loop
end if
pCloseTables(fs)
%>
答案 0 :(得分:0)
根据@JoshMontgomery评论,您可以将其设置为vbscript作业并从任务执行程序调用它。您可能遇到的唯一问题是文件夹/文件访问,因为预定作业将作为某些系统分配的用户帐户(如网络)运行。
如果您仍想将其作为asp页面运行,请在浏览器地址栏中通过URL手动调用时检查它是否运行。确保从运行计划任务的服务器执行此操作。
然后将其移至计划任务。我使用来自http://www.gnu.org/software/wget/的wget,这是一个免费的命令行http实用程序 - 给它你在地址栏中的URL,然后离开。对于计划任务,请将操作wget.exe和参数作为ASP页面的完整URL。