2016-10-10 2 views
6

FoxProデータベースに接続するVBSスクリプトがあります。VBSでループを作成する方法は?

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))で使用されています。それはAを使用して2つのクエリを実行し、Dが、結果は同じresults.txtに行くようにするため

C:\query.vbs A,D > \\share\results.txt 

:しかし、私はこれを行うことができるようにしたいです。

答えて

3

WScript.Arguments.Unnamed collectionを使用してください。

C:\query.vbs A D > \\share\results.txt 
:cmd.exeのは別々の引数としてそれらを認識するように

Dim arg 

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

と、カンマなしで呼び出します

関連する問題