【问题标题】:Using dollar sign in sqlplus spool file在 sqlplus 假脱机文件中使用美元符号
【发布时间】:2015-12-25 11:33:35
【问题描述】:

如何在 unix 中使用带美元符号的文件名(即'$'),如下所示

SQL> spool DIR$work.sql
SP2-0332: Cannot create spool file.

我尝试如下

SQL> spool DIR\$work.sql
SP2-0332: Cannot create spool file.
SQL> spool 'DIR\$work.sql'
SP2-0332: Cannot create spool file.
SQL> spool 'DIR$work.sql'
SP2-0332: Cannot create spool file.

我无法以任何方式成功地在 oracle 中创建此类文件。 我有 oracle 11g 版本。

在 windows sqlplus 中它工作正常。

【问题讨论】:

标签: oracle unix sqlplus


【解决方案1】:

您可以使用set escchar 设置来停止Oracle 解释美元符号:

SQL> show escchar
escchar OFF
SQL> spool /tmp/$work.sql
SP2-0332: Cannot create spool file.
SQL> set escchar $
SQL> spool /tmp/$work.sql
SQL>

您现在正在假脱机到该文件名。

SQL> select * from dual;

D
-
X

1 row selected.

SQL> spool off
SQL> exit
Disconnected from Oracle Database 11g Enterprise Edition Release 11.2.0.4.0 - 64bit Production
...

$ cat /tmp/\$work.sql
SQL> select * from dual;

D
-
X

1 row selected.

SQL> spool off

有关详细信息,另请参阅 My Oracle Support 文档 761384.1。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2017-02-14
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2017-01-03
    • 1970-01-01
    相关资源
    最近更新 更多