很长一段时间以来,我已经将我的 login.sql 文件配置为将 SQLPLUS 中的提示设置为两行,因此它看起来像这样:
my_username@my_db_instance
SQL>
login.sql 中完成此操作的代码如下(chr(10) 是创建第二行的内容):
define gname = 'SQL'
column global_name new_value gname
select user||'@'||instance_name||chr(10)||'SQL' as global_name
from v$instance;
set sqlprompt '&&gname> '
但是,这对 SQLcl 不起作用,并且相同的代码导致 SQLcl 提示符全部出现一行,就像这样
my_username@my_db_instance SQL>
我尝试将 chr(10) 替换为 chr(13)、chr(13)||chr(10) 和 u'\000A',但无论如何 SQLcl 提示都会显示在一行上。我已经确认 SQLcl 实际上是通过对提示进行其他更改(例如用 SQL1 替换 SQL)来读取有问题的 login.sql,并且这些更改有效。
有谁知道是否可以将 SQLcl 提示符分成 2 行?如果是这样,怎么办?
(ps,我意识到这是一个非常小的烦恼,但是虽然我喜欢在提示中包含连接信息,但让我的所有 sql 的第一行开始向右只是......呸 :)