【问题标题】:Sqlplus parametersSqlplus 参数
【发布时间】:2012-02-10 17:23:58
【问题描述】:

大家! 我想知道这条线的作用:

sqlplus -s /nolog <<EOF

有什么想法吗? 感谢您的帮助!

【问题讨论】:

  • 我认为EOFheredoc 而不是文件?
  • 是的。此行在 Unix shell 中执行。

标签: sql sqlplus


【解决方案1】:

根据您在 cmets 中提供的信息:

sqlplus -s /nolog <<EOF

在启用静默模式的情况下启动sqlplus 的实例(我相信,它不会将任何输出发送到控制台屏幕),并且没有显式提供登录名(因此/nolog),它从 EOF heredoc 中包含的字符串(可能包含登录凭据)中获取输入。

Here 是 Oracle 在 sqlplus 上的文档的快速概览。

【讨论】:

    【解决方案2】:

    From HERE:

    -s 静默选项:它抑制 SQL*Plus 横幅的输出、命令提示符和命令的回显。

    /nolog 启动 SQL*Plus 但不登录(连接)用户/会话。


    所以似乎启动 SQL*PLUS 而不登录用户/会话(nolog 选项)并且不显示信息(静默选项)。

    【讨论】:

      【解决方案3】:

      完整的摘录应该是:

      sqlplus -s /nolog << ABCDE
      
      CONNECT user/pwd@database
      -- DO SQL AND PLSQL STUFF
      EXIT
      
      ABCDE
      

      这类似于运行sqlplus -s user/pwd@database @script.sql,其中script.sql 包含sql、plsql 内容和exit 命令。 &lt;&lt; 语法是 heredoc 的 shell 运算符,这意味着如果找到 ${variables},则后面的所有行都是变量扩展的,并且第一行以 ABCDE 开头(在该行的最开头,没有空格,没有tabs) 结束输入。

      【讨论】:

        猜你喜欢
        • 2023-02-07
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2020-08-30
        • 1970-01-01
        • 2015-10-06
        相关资源
        最近更新 更多