我有一个VBS脚本连接到FoxPro数据库。

Dim oCN : Set oCN = CreateObject("ADODB.CONNECTION")
oCN.Open sCS
Dim oRS : Set oRS = oCN.Execute("SELECT SN_ANALSYS, SN_CRLIM, SN_CURRBAL FROM " & WScript.Arguments(0) & "_SNAME.DBF WHERE SN_ANALSYS != '' ORDER BY SN_ANALSYS ASC")
Do Until oRS.EOF
   WScript.Echo oRS.Fields(0).value, "50", oRS.Fields(1).Value
   WScript.Echo oRS.Fields(0).value, "51", oRS.Fields(2).Value
   oRS.MoveNext
Loop
oCN.Close

我通过BAT运行:
C:\query.vbs A > \\share\results.txt

在查询中使用A(WScript.Arguments(0))。但是我希望能够做到这一点:
C:\query.vbs A,D > \\share\results.txt

这样它就可以使用AD运行2个查询,但结果将转到相同的results.txt

最佳答案

使用 WScript.Arguments.Unnamed collection

Dim arg

For Each arg in WScript.Arguments.Unnamed
    ' use arg in the SQL query
Next

并在不使用逗号的情况下进行调用,以便cmd.exe将它们识别为单独的参数:
C:\query.vbs A D > \\share\results.txt

关于batch-file - 如何在VBS中创建循环?,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/39955229/

10-11 06:30