以下の形式のtxtファイルがあります
11SNMMMMTESTCASEJBS1961123123232YExist
このファイルから、Y または N になる 33 列目の値を確認する必要があります。N の場合は、データベースに移動して以下のクエリを使用する必要があります
Update table XYZ set Status = Not Exist where cust_id = ** ( taken from record)
Yの場合
Update table XYZ set Status = Exist where cust_id = ** ( taken from record)
テキスト ファイルから読み取った後、変数に格納された値を使用して SQLplus に接続し、テーブルを更新しようとしていますが、次のエラーが表示されます。ステップ 1 で私を出してください。誰でもエラーを指摘できますか? If & Else Part 内のいくつかのエラー、SQL クエリまたは接続が間違っています
dim fs, txt, line, yesno , cust_id
set fs = CreateObject("Scripting.FileSystemObject")
set txt = fs.OpenTextFile("E:\batchfiletest\Eapp3\scotia1.txt", 1, false)
' loop through all the lines
do while not txt.AtEndOfStream
line = txt.readLine
' read the character and store it in a variable
yesno = Mid(line, 127, 1)
cust_id = Mid(line, 1,20)
' execute the correct query
if yesno = "Y" then
set WshShell = CreateObject("WScript.Shell")
set oEnv=WshShell.Environment("Process")
cmdString = "E:\oracle\product\10.2.0\db_1\BIN\sqlplusw.exe -S sysman/csaadmin@convcsd
UPDATE csa_sli_all.T_CONV_quote set HOLD_CODE = 'CAQ' where quote_id = cust_id ;
commit;"
Set oExec = WshShell.Exec(cmdString)
ELSE
set WshShell = CreateObject("WScript.Shell")
set oEnv=WshShell.Environment("Process")
cmdString = "E:\oracle\product\10.2.0\db_1\BIN\sqlplusw.exe -S sysman/csaadmin@convcsd
UPDATE csa_sli_all.T_CONV_quote set HOLD_CODE = 'PVQ' where quote_id = cust_id ;
commit;"
Set oExec = WshShell.Exec(cmdString)
end if
loop
MsgBox "Press OK to close when done reading the output."