应该这样:
create or replace procedure p_test(tbName in varchar2) is
 v_sql varchar2(100);
begin
  v_sql:=insert into gg(gg) values('123323434')';
  execute immediate v_sql;
  commit;
end ;

解决方案 »

  1.   

    这个原因很简单,你运行那个东西只是建立了他并没有执行它,如果你要执行它,只能在别的存储过程中调用,如果有PL/SQL DEVELOPER,打开BROWSER,选择PROCEDURE中的这个存储过程,右击,然后选择TEST,再运行就成功了,像第三种情况,它只是一个程序块,当然就会执行了。
      

  2.   

    非常感谢以上各位!尤其dens,您的说法对我很有帮助,再次感谢!
    我在sqlplus里通过如下语句调用成功
    begin
    insertgg;
    end;