【发布时间】:2014-12-18 10:02:04
【问题描述】:
我有一个批处理文件,其中包含许多步骤,将逐个执行。
但是,为了使其更灵活,我想在SQLPlus 中包含条件检查。
类似于,首先从查询中获取条件变量的值并存储在v_variable 中。然后将其用于一些检查,例如
IF v_variable = 'Y' THEN
--DO SOME DDL
ELSE
--DO OTHER DDL
END IF
我必须在批处理文件的许多地方重复这个块,我无法通过 PL/SQL 以某种方式完成。
我正在尝试在SQLPlus 中使用这个COLUMN 命令,但不知何故没有得到要保存的变量值。
COLUMN VARIABLE1 NEW_VALUE V_VARIABLE1
SELECT PARAM_VAL AS VARIABLE1 FROM TABLE_T WHERE PARAM_TYPE = 'XYZ';
-- This query will only throw one record.
DEFINE V_VARIABLE1
这是绝对错误的吗?我们如何查看V_VARIABLE1 是否正在获取来自查询的值?
即使我做对了,我对IF-ELSE 部分一无所知。有人可以在这里帮忙吗?我对适用于 SQLPlus 的解决方案感兴趣。
【问题讨论】:
标签: batch-file sqlplus conditional-statements