Я хочу запустить команду 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 для настройки имени моего журнала и количества строк.
Я понимаю, что массивы в пакетном скрипте - кошмар, и я пытаюсь, но не могу понять это правильно. Может кто-нибудь, пожалуйста, помогите мне?