oracle 绑定变量和动态sql

declare 
   l_dept     pls_integer := 20; 
   l_nam      varchar2(20); 
   l_loc      varchar2(20); 
begin 
   execute immediate 'select dname, loc from dept where deptno = :1' 
     into l_nam, l_loc 
     using l_dept ; 
end;

测试:
declare
  -- Local variables here
  tablename user_objects.object_name%type;
  vsql varchar2(100);
 
begin
  -- Test statements here
  tablename:='ORG';
  execute immediate 'create table a(name varchar2(200))'; 
  vsql:='insert into a values(:name)';
 execute immediate vsql using tablename;
 commit;
 
end;

你可能感兴趣的:(oracle)