在 Korn Shell(AIX) 中运行 pl/sql
我有一个由某人编写的要在 Ksh 中执行的文件。它有一组在 sqlplus 中执行的命令。
它
sqlplus -s $UP <<- END
以一组 ddl 命令开头,例如 create、drop 等,
当我在 shell 中执行该文件时,我在上面引用的起始行中收到错误。 我理解“-s”以静默模式启动sqlplus,$UP是带有用户名/密码的连接字符串。但我无法弄清楚“<<-END”部分的正反面(谷歌的许多网站都说输入重定向是“<<”而不是“<<-”)。所以我推测错误一定是在该部分并将其从文件中删除。 现在它读取,
sqlplus -s $UP
但是一旦我执行该文件,它就会等待来自 shell 的输入,而不是读取文件中的其余行。我如何让 sqlplus 执行文件其余部分中的 ddl 命令?提前致谢。
I have a file to execute in Ksh written by someone. It has a set of commands to execute in sqlplus.
It starts with,
sqlplus -s $UP <<- END
followed by a set of ddl commands such as create,drop,etc.,
When I execute the file in the shell, I get the error in the starting line quoted above.
I understand "-s" starts the sqlplus in silent mode and $UP is the connection string with username/password. But I couldn't make heads or tails of "<<- END" part(Many sites from google says input redirection is "<<" not "<<-"). So I presumed the error must be in that part and removed it from the file.
Now it reads,
sqlplus -s $UP
But once I execute the file, It waits for input from the shell, instead of reading the rest of the lines from the file. How would I make sqlplus to execute the ddl commands in the rest of the file?. Thanks in advance.
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
这里“END”是块标记,“-”不是必需的。
为了从 shell 脚本运行 sql,下面给出了一个简单的示例。
谢谢,
林森·克
数据库管理员
Here "END" is a block marker and "-" is not required.
For running sqls from a shell script , One simple example is given below.
Thanks,
Rinson KE
DBA