CREATE OR REPLACE add_s(p_no NUMBER,p_name VARCHAR2,p_cnu NUMBER)
AS
BEGIN
  INSERT INTO cla VALUES(p_cnu);
  INSERT INTO  stu VALUES(p_no,p_name,p_cnu);
  COMMIT; 
  EXCEPTION WHEN OTHERS THEN
    dbms_output.put_line('no');
  END;
出现选项缺失或无效  为什么呢?

解决方案 »

  1.   


    CREATE OR REPLACE add_s(p_no NUMBER,p_name VARCHAR2,p_cnu NUMBER)
    AS
    BEGIN
      INSERT INTO cla(栏位名) VALUES(p_cnu);
      INSERT INTO stu(栏位名) VALUES(p_no,p_name,p_cnu);
      COMMIT;  
      EXCEPTION WHEN OTHERS THEN
      dbms_output.put_line('no');
      END;
      

  2.   


    加上了 还是这个错误 
    我建表的过程是这样的 ,你看下 
    CREATE OR REPLACE PROCEDURE CREATE_S_C AS
      SQL_C1 VARCHAR2(1000);
      SQL_C2 VARCHAR2(1000);
    BEGIN
      SQL_C1 := ' CREATE TABLE CLA(cno NUMBER   PRIMARY KEY )';
      EXECUTE IMMEDIATE 'sql_c1';
      COMMIT;
      SQL_C2 := ' CREATE TABLE STU(NU NUMBER   PRIMARY KEY, NAME VARCHAR2(10),CNO NUMBER REFERENCES CLA(CNO));';
      EXECUTE IMMEDIATE 'sql_c2';
      COMMIT;
    EXCEPTION
      WHEN OTHERS THEN
        EXECUTE IMMEDIATE 'no';
        EXECUTE IMMEDIATE 'sql_c1';
        EXECUTE IMMEDIATE 'sql_c2';
    END;问题在哪里呢???
      

  3.   

    CREATE OR REPLACE add_s 
    你想创建什么?
    存储过程?
    CREATE OR REPLACE procedure add_s 
      

  4.   


    CREATE OR REPLACE Procedure add_s(p_no NUMBER,p_name VARCHAR2,p_cnu NUMBER)
    AS
    BEGIN
      INSERT INTO cla(cno) VALUES(p_cnu);
      INSERT INTO stu(nu,NAME,cno) VALUES(p_no,p_name,p_cnu);
      COMMIT;  
      EXCEPTION WHEN OTHERS THEN
      dbms_output.put_line('no');
      END;
      

  5.   


    CREATE OR REPLACE Procedure add_s(p_no NUMBER,p_name VARCHAR2,p_cnu NUMBER)
    AS
    BEGIN
      INSERT INTO cla(cno) VALUES(p_cnu);
      INSERT INTO stu(nu,NAME,cno) VALUES(p_no,p_name,p_cnu);
      COMMIT;  
      EXCEPTION WHEN OTHERS THEN
      dbms_output.put_line('no');
      END;
      

  6.   

    CREATE OR REPLACE PROCEDURE CREATE_S_C AS
      SQL_C1 VARCHAR2(1000);
      SQL_C2 VARCHAR2(1000);
    BEGIN
      SQL_C1 := ' CREATE TABLE CLA(cno NUMBER PRIMARY KEY )';
      EXECUTE IMMEDIATE 'sql_c1';
      COMMIT;
      SQL_C2 := ' CREATE TABLE STU(NU NUMBER PRIMARY KEY, NAME VARCHAR2(10),CNO NUMBER REFERENCES CLA(CNO));';
      EXECUTE IMMEDIATE 'sql_c2';
      COMMIT;
    EXCEPTION
      WHEN OTHERS THEN
      EXECUTE IMMEDIATE 'no';
      EXECUTE IMMEDIATE 'sql_c1';
      EXECUTE IMMEDIATE 'sql_c2';
    END;这段代码为什么我执行不通过呢???