अगर मैं इसे सही ढंग से पढ़ रहा हूं, तो मुझे लगता है कि आप Oracle प्रतिस्थापन चर।
यह आपको हर बार मूल्यों को इनपुट करने के लिए प्रेरित करेगा, &val का उपयोग करके यह आपको @ रनटाइम
. का संकेत देगा 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);
मान को बनाए रखने के लिए इसे &&var में बदलें, फिर उपयोग करें
UNDEFINE var
इसे साफ़ करने के लिए
अब आप DEFINE का उपयोग करके इन्हें पृष्ठ के शीर्ष पर सेट कर सकते हैं (इस प्रकार संकेत से बच सकते हैं)
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')"
डबल एम्परसेंड मान को तब तक बनाए रखेगा जब तक आप इसे परिभाषित नहीं करते (ऊपर देखें) या इसे फिर से परिभाषित नहीं करते।