Listen Software解决方案 “How To” 系列2:存储过程
发表于:2007-07-02来源:作者:点击数:
标签:
Listen Software 解决方案 “How To” 系列2:存储过程 参照: 参照定义和使用游标 参照定义和使用函数 存储过程 CREATE OR REPLACE PROCEDURE {procedure name} ( {argument} IN {datatype} ) IS v_variable {datatype}; --变量类型 VARCHAR(X); VARCHAR2(X)
Listen Software
解决方案 “How To” 系列2:存储过程
参照:
参照定义和使用游标
参照定义和使用函数
存储过程
CREATE OR REPLACE PROCEDURE {procedure name}
( {argument} IN {datatype} ) IS v_variable {datatype};
--变量类型
VARCHAR(X);
VARCHAR2(X);
VARCHAR2;
CHAR(X);
NUMBER(P,S);
--P-数字的位数
--S-数字的精度
NUMBER(X);
NUMBER;
LONG;
--容纳32,760字节数据
DOUBLE PRECISION;
FLOAT;
INT;
REAL;
DATE;
RAW(X)
--容纳32,760字节数据
LONG RAW;
--容纳32,760字节数据
--注意
数据库类型为LONG RAW
--容纳20亿字节数据
RECORD;
TABLE;
VARRAY;
LOB;
CLOB;
v_variable_c1 VARCHAR2(20);
--创建20个字符长的变量
v_variable_c2 CHAR(10);
--创建固定长度为10个字符的变量
- 最大长度255
v_variable_c3 VARCHAR2;
--变量长度不能超过2000个字符
v_variable_n1 table_name.field_name%TYPE;
--定义参照方案中表字段类型的变量类型
v_variable_n2 NUMBER;
v_variable_n3 NUMBER := 3;
v_variable_n4 NUMBER(10);
v_variable_n5 NUMBER(10,2);
v_variable_n6 LONG;
v_variable_n7 FLOAT;
v_variable_n8 REAL;
TYPE t_my_record IS RECORD
(
v_variable1 VARCHAR2(8)
,v_variable2 NUMBER(10)
,v_variable3 DATE
);
my_record t_my_record;
TYPE t_my_table is TABLE OF VARCHAR2(10)
--与
vb中的数据结构相似
INDEX BY BINARY_INTEGER;
my_table t_my_table;
BEGIN
--这儿插入代码
v_variable_c1 := @#Hello World@#;
v_variable_n2 :=10;
--条件逻辑
IF v_variable_n2 = 1 THEN
v_variable_c2 := @#Exact Match@#;
ELSIF v_variable_n3 > 2 THEN
v_variable_c2 := @#Greater Than Match@#;
ELSE
v_variable_c3 := @#None of the Above@#;
END IF;
my_record.v_variable1:=@#ABC@#;
my_record.v_variable2:=3;
my_record.v_variable3:=TO_DATE(@#11-JAN-1999@#,@#DD-MON-YYYY@#);
my_table(1)=@#A@#;
my_table(2)=@#B@#;
/* v_variable_n2的值为10,因此第一个条件为false.
v_variable_n3初始为3,因此条件为true,
v_variable_c2的值就为@#Greater Than Match@#
循环 */
v_variable_n2:=0;
LOOP
v_variable_n2:=v_variable_n2+1;
EXIT WHEN v_variable_n2 > 10;
END LOOP;
v_variable_n2:=0;
WHILE v_variable_n2<10 LOOP
v_variable_n2:=v_variable_n2+1;
END LOOP;
FOR v_variable_n2 in 1..10 LOOP
END LOOP;
END {procedure name};
原文转自:http://www.ltesting.net