jika saya membaca ini dengan benar, saya pikir Anda mencari Variabel Substitusi Oracle.
ini akan meminta Anda setiap kali memasukkan nilai, dengan menggunakan &val itu akan meminta Anda @ runtime
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);
ubah ke &&var untuk mempertahankan nilainya, lalu gunakan
UNDEFINE var
untuk menghapusnya
Sekarang Anda dapat mengatur ini di bagian atas halaman (sehingga menghindari prompt) dengan menggunakan DEFINE seperti itu
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')"
ampersand ganda akan 'mempertahankan' nilainya sampai Anda MEMBATALKANNYA (lihat di atas) atau mendefinisikannya kembali.