【发布时间】:2011-04-20 13:39:24
【问题描述】:
(我发现这部分回答了这个问题,尽管我的 sql 将用于 oracle 和 mssql 中,但声明方式看起来会更整洁:) Binding variables in dynamic PL/SQL
我有一些动态 sql,我正在使用如下语法执行:
EXECUTE IMMEDIATE plsql_block USING employeeid, sortname;
然后我可以使用 :1、:2 等访问动态 sql 中的这些变量。 我可以改用命名参数吗?像
EXECUTE IMMEDIATE plsql_block USING employeeid => employeeid
然后在动态 sql 中使用 :employeeid 而不是依赖位置来访问它们?
如果不是我的想法是在 sql 的开头做这样的事情:
declare employeeid varchar(15 := :1;
然后我可以将我的动态 sql 更改为我心中的内容,而不必担心定位。
有没有更好的办法?
谢谢
【问题讨论】:
标签: oracle dynamic-sql