赵王涛笔记 浅谈存储过程(一)
create or replace procedure NEW_STUDENT(SNAME IN VARCHAR2,SAGE IN INTEGER,SNO IN VARCHAr2 )
as
Begin
INSERT INTO STUDENT(SNAME,SAGE,SNO) VALUES(SNAME,SAGE,SNO);
END ;
说明:
1.存储过程的不能来自角色,他们必须直接授予过程的所有者
2.如果一个过程已经存在,可以通过create or replace procedure 的命令进行
替换,使用该命令的优点是仍然可以维持以前在此过程上授予的execute权限。调用
此存储过程时必须对指定值的参数使用IN限定符。IN表示的是输入,而OUT限定符表
示的是输出(返回给调用者)IN OUT 限定符表示该参数既是输入又是输出。如果不指
定限定符的类型,其默认值是IN。
3.在默认条件下,过程是由用pl/sql编写的代码块组成,即调用时存储过程执行的代码。
4.在代码块中可以包含DML语句,不能用于DDL语句(创建视图等)。