如何从unix.ctl文件执行Oralce过程

ndh0cuux  于 7个月前  发布在  Unix
关注(0)|答案(2)|浏览(78)

有没有办法从unix.ctl文件中执行oracle过程。
我试图从.sh文件调用该程序,并成功。
但我需要从.ctl文件调用该过程。

am46iovg

am46iovg1#

您不能通过SQLLoader执行过程,不能。您可以对单个字段值进行转换,但这不是您在这里需要的。
最简单的解决方案可能是有一个shell脚本,它调用SQL
Loader,然后调用SQL*Plus来执行过程。作为一个非常粗略的概述:

#!/bin/bash
sqlldr username/password control=/path/test_loading.ctl
sqlplus username/password <<!EOF
begin
  your_procedure(...);
end;
/
!EOF

字符串
因此,实际上,您已经使用脚本来调用过程,但添加了对SQL*Loader的调用。
这可以让你的控制文件匹配你的“类似功能”,它只是有一个 shell 脚本 Package 它。

eni9jsuy

eni9jsuy2#

在命令行sqlldr userid=someuser@somepassword control=some_loader_script.ctl中执行此操作

相关问题