我正在尝试存储一些sqlplus值到unix变量,但它不工作。请帮助
数据库中的配置文件值为AB_ORACLE_DBREFRESH_PROFILE
我的尝试
Profile=`$ORACLE_HOME/bin/sqlplus -s / as sysdba << endl | grep KEEP | sed 's/KEEP//;s/[ ]//g'
set heading off
select 'KEEP',substr(PROFILE,1,27) from DBA_USERS where USERNAME='SYSTEM';
endl`
它显示substr(1,18),但对于上述值不起作用
1条答案
按热度按时间sf6xfgos1#
您的代码对我来说工作正常。在Oracle客户端的旧版本中可能会有所不同。要检查的事项:
1.您的列大小。SQLPlus并不总是按照您的要求分配宽度,尤其是在对列应用函数时。为列指定别名,并告诉SQL*Plus它将具有的宽度:
1.你的线条大小。你在这里可能没问题,但为了以防万一,请确保线条长度足够: