我想运行一个用一些参数定制的 sqlldr 命令,更准确地说是一个名称和一个关联的数字。现在我只通过名称进行迭代,但我想将每个名称与一个数字相关联。
@echo off
set ORACLE_PWD=orcl
set NLS_NUMERIC_CHARACTERS=.,
setlocal
echo "Run number " %1
For %%X in (region nation supplier customer part partsupp orders lineitem) do (
sqlldr userid='sys/%ORACLE_PWD% as sysdba' log=%%X%1.log control=%%X.ctl direct=true rows=<associated_number> multithreading=true
)
我有 2 个选项:使用另一个数字数组(这可能是最难的事情)或解析一个文本文件,例如:
region 25 (or region DELIMITER 25)
nation 100
supplier 5000
等等
然后将这些值获取到 vars 并在 sqlldr 命令中使用它们来自定义我的日志名称和行数。
我知道批处理脚本中的数组是一场噩梦,我正在尝试,但我做错了。有人可以帮我吗?