防止 SQL*Plus 从变量的字符串值中间删除空格



我有一个SQL*Plus报告,它的运行时格式为"MM/DD/YYYY hh24:mi";打印在每页的标题部分。所以我做了以下事情:

-- set variable run_time 
column rTime new_value run_time noprint
select to_char(sysdate,'MM/DD/YYYY hh24:mi') rTime from dual;
-- print contents
ttitle right 'RUN TIME: ' &run_time

但是打印出来的是日期&时间之间没有空间,就像这样:

运行日期:04/07/20215:32

起初,我认为这可能与日期到字符的转换有关,但对于任何字符串和不调用日期都是同样的问题。例如:

column testing new_value testing123 noprint
select 'blah blah' testing from dual;
ttitle left &testing123

结果是";等等;。所以中间的空间又被丢弃了。有人知道如何防止这种行为吗?是否有需要设置的SQL*Plus设置,或者我需要在";列";还是小块?

来自文档:

如果要在一行中放置多个单词,请用单引号输入文本。

在他们的例子中,将变量放在单引号中;也是如此

ttitle left '&testing123'

ttitle right 'RUN TIME: &run_time'

最新更新