ORACLE 使用EXECUTE 语句来实现对存储过程的调用: EXEC[UTE] Procedure_name( parameter1, parameter2…); 例:查询指定员工记录; CREATE OR REPLACE PROCEDURE QueryEmp (v_empno IN emp.empno%TYPE, v_ename OUT emp.ename%TYPE, v_sal OUT emp.sal%TYPE) AS BEGIN SELECT ename, sal INTO v_ename, v_sal FROM emp WHERE empno=v_empno; DBMS_OUTPUT.PUT_LINE('编码为'||v_empno||'的员工已经查到!'); EXCEPTION WHEN NO_DATA_FOUND THEN DBMS_OUTPUT.PUT_LINE('你需要的数据不存在!'); WHEN OTHERS THEN DBMS_OUTPUT.PUT_LINE('发生其它错误!'); END QueryEmp; 调用方法: DECLARE v1 emp.ename%TYPE; v2 emp.sal%TYPE; BEGIN QueryEmp(7788, v1, v2); DBMS_OUTPUT.PUT_LINE('姓名:'||v1); DBMS_OUTPUT.PUT_LINE('工资:'||v2); QueryEmp(7902, v1, v2); DBMS_OUTPUT.PUT_LINE('姓名:'||v1); DBMS_OUTPUT.PUT_LINE('工资:'||v2); QueryEmp(8899, v1, v2); DBMS_OUTPUT.PUT_LINE('姓名:'||v1); DBMS_OUTPUT.PUT_LINE('工资:'||v2); END; 例.计算指定部门的工资总和,并统计其中的职工数量。 CREATE OR REPLACE PROCEDURE proc_demo (Dept_no NUMBER DEFAULT 10, Sal_sum OUT NUMBER, Emp_count OUT NUMBER) IS BEGIN SELECT SUM(sal), COUNT(*) INTO sal_sum, emp_count FR