oracle存储过程简单示例
存储过程:
存储过程(Stored Procedure)是在大型数据库系统中,一组为了完成特定功能的SQL 语句集,存储在数据库中,经过第一次编译后再次调用不需要再次编译,用户通过指定存储过程的名字并给出参数(如果该存储过程带有参数)来执行它。存储过程保存在数据库里面,存储过程可以被连接此数据库的所有程序设计语言和程序使用,存储过程可以有数据库管理软件(如PLSQL)修改,使得多层结构程序调整系统逻辑时,并不需要编译和分发程序,并且存储过程执行中,不会引起网络流量,不占用程序服务器的内存和CPU资源。
简单示例:
环境:PL/SQL Oracle
建表:
create Table user(id varchar(8),name varchar(28),pwd varchar(38),address varchar(120))
创建存储过程:
//or replace:数据库中若存在同名的存储过程,直接覆盖,如果不使用or replace 同名会报错 //test:存储过程名称 create or replace procedure test( id user.id%type, //保证该参数与数据库中的字段类型同步 name user.name%type, pwd user.pwd%type, address user.address%type )as begin insert into user(id,name,pwd,address) values(id,name,pwd,address); end;
调用存储过程:
PL/SQL中调用:
begin test('5','张三','255','江西南昌'); end;
sql.xml文件中调用:
//parameterType:传入的参数类型 resultType:返回的结果类型 //statementType:标识调用存储过程 <select id="" parameterType="" resultType="" statementType="CALLABLE"> { call test('5','张三','255','江西南昌') }