我正在编写一个在sqlplus 11中运行的脚本.我有一个名为compression的用户定义变量.如果这是真的,那么我想运行脚本CreateTablesCompression,否则运行.我有以下内容:
decode(compression,'true',@@CreateTablesCompression,@@CreateTables);
但是,当我运行这个时,我抛出错误:未知命令开始“解码…
我在这里遗漏了什么,我不明白为什么sqlPlus不能识别解码?
解码不是sql * PLUS命令,只能在pl / sql块或查询中直接在sql * plus中使用它.所以这是一个如何完成条件分支的例子:
我们声明一个变量标志,用于管理两个可用脚本中的哪一个运行.
原文链接:https://www.f2er.com/oracle/205291.html我们声明一个变量标志,用于管理两个可用脚本中的哪一个运行.
sql> variable flag varchar2(7); sql> exec :flag := 'true'; PL/sql procedure successfully completed. sql> column our_script new_value script noprint; sql> select decode(:flag,2 'c:\sqlplus\script1.sql',3 'c:\sqlplus\script2.sql' 4 ) our_script 5 from dual; sql> @&script; SCRIPT -------- script_1