下面是一個例子查詢,我想我的程序產生如何通過字符串值作爲參數PLSQL過程
select *
from Registration
where Loc_ID = 6
AND CROP_ID = 163
AND REG_NAME = 'Apiro MX';
REG_NAME
是varchar2()
我已創建了一個程序,在這裏我想執行一個查詢類似下面
query := 'select REG_ID from Registration where loc_id = ' ||
countryid || ' AND Crop_id = ' || cropid ||
' AND Reg_name = '|| ''' || productid || ''' || ';
我得到的REG_NAME
部分錯誤,它正在productid
as " || productid ||"
你能否幫我準確的查詢一下。
你爲什麼要爲該查詢使用動態SQL? (如果你有一個真正的理由,爲什麼你不使用綁定變量?) –
我們不能使用動態sql做到這一點,如果可能的話,請你糾正我的查詢。 –
當然,你可以通過轉義你正在使用的引號,或者(很多)最好使用綁定變量;但你爲什麼要?它效率較低,難以維護。 –