(я нашел это, что частично отвечает на вопрос, способ объявления будет выглядеть более аккуратно, хотя, учитывая, что мой sql is будет использоваться в oracle и mssql :) Связывание переменных в динамическом PL / SQL
У меня есть динамический sql, который я выполняю, используя синтаксис, подобный приведенному ниже:
EXECUTE IMMEDIATE plsql_block USING employeeid, sortname;
, и я могу затем получить доступ к этим переменным внутри динамического sql, используя: 1,: 2 и т. Д.Могу ли я использовать именованные параметры вместо?что-то вроде
EXECUTE IMMEDIATE plsql_block USING employeeid => employeeid
, а затем получить к ним доступ в динамическом sql, используя: employeeid, а не полагаясь на позицию?
Если бы не моя мысль сделать что-то подобное в начале sql:
declare employeeid varchar(15 := :1;
и тогда я могу изменить свой динамический sql на свое сердце, не беспокоясь о позиционировании.
Есть ли лучший способ?
спасибо