SQL> create or replace procedure p_update_gzb (p_id in number,p_sz in bumber) is
2 begin
3 update gzb set gz=p_gz where id=p_id;
4 commit;
5 end;
6 /警告: 创建的过程带有编译错误。
2 begin
3 update gzb set gz=p_gz where id=p_id;
4 commit;
5 end;
6 /警告: 创建的过程带有编译错误。
SQL> CREATE TABLE GZB(
2 ID NUMBER PRIMARY KEY,
3 CNAME VARCHAR2(30),
4 GZ NUMBER(5)
5 );Table created.SQL> INSERT INTO GZB SELECT 1,'GRANT',5000 FROM DUAL;1 row created.SQL> SELECT * FROM GZB; ID CNAME GZ
---------- ------------------------------ ----------
1 GRANT 5000SQL> CREATE OR REPLACE PROCEDURE P_UPDATE_GZB(P_ID IN NUMBER,P_SZ IN NUMBER) IS
2 BEGIN
3 UPDATE GZB SET GZ=P_SZ WHERE ID=P_ID;
4 COMMIT;
5 END;
6 /--------
1: p_sz in bumber
搂住笔误不少
-----------SQL> create or replace procedure p_update_gzb (p_id in number,p_gz in number) as
2 begin
3 update gzb set gz=p_gz where gzb.id=p_id;
4 commit;
5 end;
6 /过程已创建。
------------------
为什么我在SQL*Plus worksheet 中 输入
create or replace procedure p_update_gzb (p_id in number,p_gz in number) as
begin
update gzb set gz=p_gz where gzb.id=p_id;
commit;
end;
执行后不行
------------------------------
我现在想在问下 ,存储过程和函数是不是都可以带参数 并有结果返回值 返回值 类型有没有限制
刚刚接触 oracle 连个过程 也写不了 谁提供一个 带参数和返回值的存储过程和函数给我参照下
谢谢
有了这些,一切问题都很简单的,下载一个关于pl/sql的学习资料。O'Reilly Oracle PL/SQL Programming这个不错。