Wenn ich das richtig lese, suchen Sie vermutlich nach Oracle Substitutionsvariablen.
Dadurch werden Sie jedes Mal aufgefordert, die Werte einzugeben. Wenn Sie &val verwenden, werden Sie aufgefordert, @runtime
einzugeben SELECT
CFS.CAE_SEC_ID,
CFS.FM_SEC_CODE,
CFS.LAST_USER_ID,
CASE
when &p_USBank_n = 1 then
sl.usbank_to_edit
else
CASE
when '&p_user_id_c' = CFS.last_user_id then
sl.owner_to_edit
else
sl.to_edit
end
end canEdit
FROM
CAEDBO.CAE_FOF_SECURITY CFS
INNER JOIN caedbo.CAE_DATA_SET_ELEMENT CDSE_STAT
ON (CDSE_STAT.DATA_SET_ELEMENT_ID = CFS.APPR_STATUS)
INNER JOIN caedbo.CAE_STATE_LOOKUP sl
ON (sl.object_state = CDSE_STAT.data_set_element_id)
where
CFS.CAE_SEC_ID IN (3741, 3744, 3748, 3752);
ändern Sie es in &&var, damit es den Wert behält, und verwenden Sie dann
UNDEFINE var
löschen
Jetzt können Sie diese oben auf der Seite setzen (wodurch die Eingabeaufforderung vermieden wird), indem Sie DEFINE als solches verwenden
DEFINE XYZ = 5
DEFINE AAA = to_date('10/10/2010','mm/dd/rrrr')
DEFINE textString = AaBbCc
SELECT &&XYZ b, &&AAA a, '&&textString' textString
from dual ;
B A TEXTSTRING
---------------------- ------------------------- ----------
5 10.OCT.2010 00:00 AaBbCc
--typing define will show you all the "defined" values
define
DEFINE XYZ = "5"
DEFINE TEXTSTRING = "AaBbCc"
DEFINE AAA = "to_date('10/10/2010','mm/dd/rrrr')"
das doppelte kaufmännische Und behält den Wert bei, bis Sie ihn AUFHEBEN (siehe oben) oder neu definieren.