解决方案 »

  1.   

    是啊,这是sql实例,我在sql里面做了一下,就报错了
      

  2.   

    在PL/SQL或者是Oracle的SQL里面,相加不能使用 +  应该使用 ||
    UPDATE EMP SET SAL=SAL+P_RAISE WHERE EMPNO=P_EMPNO;
    修改为
    UPDATE EMP SET SAL=SAL || P_RAISE WHERE EMPNO = P_EMPNO;
    其他类似.
      

  3.   

    CREATE OR REPLACE PROCEDURE CHANGE_SALARY(P_EMPNO IN NUMBER DEFAULT 7788,P_RAISE NUMBER DEFAULT 10)
    AS
     V_ENAME VARCHAR2(10);
     V_SAL NUMBER(5);BEGIN
     SELECT ENAME,SAL INTO V_ENAME,V_SAL FROM EMP WHERE EMPNO=P_EMPNO;
     UPDATE EMP SET SAL=SAL+P_RAISE WHERE EMPNO=P_EMPNO;
     DBMS_OUTPUT.PUT_LINE('雇员'||V_ENAME||'的工资被改为'||TO_CHAR(V_SAL+P_RAISE));
     COMMIT;
    EXCEPTION
     WHEN OTHERS THEN
     DBMS_OUTPUT.PUT_LINE('发生错误,修改失败!');
     ROLLBACK;
    END;
    楼主请你注意你的符号啊,不要输入中文符号,这个可以编译成功