oracle 存储过程
2015-12-11 11:27
393 查看
查询当前用户的存储过程:
查询存储过程的语法错误信息:
最简单的存储过程:在plsql中执行 上述sql即可创建,如果在sqlplus 中创建,则换行加"/" 创建。
执行存储过程:在plsql中执行 上述sql即可执行,如果在sqlplus 中执行,则换行加"/" 执行。sqlplus 中不显示结果,先得set serveroutput on
IF判断:
IF else if 判断:
CREATE OR REPLACE PROCEDURE pro_test(
num1 IN OUT NUMBER,
fuhao IN VARCHAR
)
AS
num3 NUMBER(10) := 100;
BEGIN
IF (fuhao='+') THEN
num1:=num1+num3;
ELSIF(fuhao ='-') THEN -- 注意是elsif
num1:=num3-num1;
ELSE
num1:=num3*num1;
END IF;
END;
SELECT * FROM user_procedures
查询存储过程的语法错误信息:
SELECT * FROM user_errors
最简单的存储过程:在plsql中执行 上述sql即可创建,如果在sqlplus 中创建,则换行加"/" 创建。
CREATE OR REPLACE PROCEDURE pro_add( -- 参数 num1 NUMBER, -- 默认为 in 输入 num2 OUT NUMBER -- out 为输出 in out 为输入且输出参数 ) AS -- 定义变量 并赋值 num3 NUMBER := 11; BEGIN num2 := num1 + num3; END pro_add; --也可以省略存储过程名称
执行存储过程:在plsql中执行 上述sql即可执行,如果在sqlplus 中执行,则换行加"/" 执行。sqlplus 中不显示结果,先得set serveroutput on
DECLARE num3 NUMBER(10); -- 创建变量 注意要设置长度 BEGIN pro_add(22,num3); -- 执行存储过程 dbms_output.put_line(num3); -- 打印信息 END;
IF判断:
CREATE OR REPLACE PROCEDURE pro_test( num1 IN OUT NUMBER ) AS num3 NUMBER := 100; BEGIN IF num1 != 0 THEN -- 可以没有括号 BEGIN -- 好像没有也可以 num1 := num3 / num1; END; END IF; END;
IF else if 判断:
CREATE OR REPLACE PROCEDURE pro_test(
num1 IN OUT NUMBER,
fuhao IN VARCHAR
)
AS
num3 NUMBER(10) := 100;
BEGIN
IF (fuhao='+') THEN
num1:=num1+num3;
ELSIF(fuhao ='-') THEN -- 注意是elsif
num1:=num3-num1;
ELSE
num1:=num3*num1;
END IF;
END;
相关文章推荐
- Oracle中REGEXP_SUBSTR函数
- oracle数据库中的联接查询
- Oracle INV - SO line backorder API
- 范式(Oracle)
- plsql oracle客户端配置
- PetaPoco利用ODP.NET Managed Driver连接Oracle
- oracle定制定时执行任务
- oracle job interval·相关事例
- oracle分页查询原理
- Oracle BI基础之ETL数据增量抽取方案
- Oracle 基础
- Oracle中varchar,varchar2,nvarchar,nvarchar2的区别
- Oracle中已有数据的字段类型修改
- oracle建立job定期运行存储过程
- ORACLE 事务属性详解
- 24 Given the following steps, which would be the correct order to create a backup of an Oracle datab
- 关于oracle数据库备份还原-impdp,expdp
- oracle存储过程的学习
- oracle跨库查询dblink的用法实例详解
- Oracle修改表空间大小的方法