我正在尝试为 Windows (XP) 创建一个批处理文件,它将有几个 sql,当它运行时它将 1. 与 oracle 连接 2. 设置用户 ID/密码/模式 3. 在循环中运行每个 sql 和 4. 输出每个 sql 输出到自己的平面文件。
我已经启动了脚本
@ECHO off
SET STATE=fl
TABLE1=AGENCY
set SQL1="SELECT Column_ID||CHR(31)||column_ENTITY_CD||CHR(31) FROM AGENCY"
set TABLE2=FIRM
set SQL2="SELECT Column_ID||CHR(31)||Column_NM||CHR(31) FROM FIRM"
set TABLE3=FL_CO_LOB
Set SQL3="SELECT Column_ID||CHR(31)||Column_LOB_CODE||CHR(31) FROM FL_CO_LOB"
...
SET NumberOfTables=19
SETLOCAL ENABLEDELAYEDEXPANSION
FOR /l %%A IN (1,1,%NumberOfTables%) DO (
echo !SQL%%A!
)
endlocal
我可以从变量中获取 SQL,但不知道如何连接到 oracle 并运行 sql 并将输出获取到定义的文件。
请给我一些指导。
需要注意的一件事是 echo 正在打印,包括双引号。但如果我没有它们,那么它只会打印第一个单词而不是整个查询。
谢谢