有个创建表的存储过程  放在一个txt 里面  现在 用sqlplus  能执行这个txt 文件吗 我执行时候 不报错也不执行 这个文件麻烦看看谢谢

解决方案 »

  1.   

    CREATE OR REPLACE PACKAGE BODY cc1 IS
    PROCEDURE run
    IS
    BEGIN
    a;
    b;
    END run;
    PROCEDURE a
    IS
    BEGIN
    declare a number;
    begin
       select count(1) into a from user_tables where table_name='A';
       if a>0 then
         dbms_output.put_line('表存在');
         else
           dbms_output.put_line('表不存在');
               execute IMMEDIATE
                'CREATE TABLE "A"
      (  "ID" VARCHAR2(10), "NAME" VARCHAR2(10)) ';
           end if;
         END;
    COMMIT;
    END a;PROCEDURE b
    IS
    BEGIN
    declare a number;
    begin
       select count(1) into a from user_tables where table_name='bb';
       if a>0 then
         dbms_output.put_line('表存在');
         else
           dbms_output.put_line('表不存在');
               execute IMMEDIATE
                'CREATE TABLE "bb"
      (  "ID" VARCHAR2(10), "NAME" VARCHAR2(10)) ';
           end if;
         END;
    COMMIT;
    END b;
    END cc1;
      

  2.   

    把代码拷贝到SQLPLUS上执行,然后调用存储过程就行了