oracle PL/SQL
1定义常量
常量名 constant 类型标识符 [not null]:=值
2基本数据类型
Number 数字型
Int 整数型
Pls_integer 整数型,产生溢出时出现错误
Binary_integer 整数型,标识带符号的整型
Char 定长字符 最大255
Varchar2 变长字符型,最大2000
Long 变长字符,最大2G
Data 日期型
Boolean 布尔型(True,False,Null)
3基本数据类型定义
变量名 类型标识符 [not null]:=值
4复合数据类型
1.使用%type定义变量
mydata tempuser.test.curr%type
表示定义了一个和数据表test中和curr字段类型一致
2.记录类型数据类型
type MyRecord is record(a int, b data);
srecord MyRecord ;
3.使用%rowtype可以得到一个表的结构
mytable text%rowtype
得到和text记录同样的表结构
5定义一维表类型变量
type 表类型 is table of 类型 index by binary_integer;//定义类型
表变量名 表类型;//定义值
6.||连接字符串运算符
7.定义好表变量可以用count.delete.first.last.next.exists.prior来操作
8表达式
+-*/ **乘方……
9函数
To_char 将其他类型转换为字符型
To_date 将其他类型转换为日期型
To_number 将其他类型转换为数值类型
10 流程控制
1)if 条件 then 语句段 end if;
2)if 条件 then 语句段1 else 语句段2 end if ;
11循环控制
1)loop 循环语句段
if退出条件 then
exit;
end if;
end loop
2) loop 循环语句
exit when 退出条件
end loop;
3)while 条件 loop
执行语句段
end loop
4)for 循环变量 in 循环下界..循环上界 loop
循环处理段
end loop;
12 事务处理
commit 提交事务命令
用 set auto on 打开自动提交事物
用 set auto off 关闭自动提交
rollback 事物回滚命令
serverpoint 保存点命令
创建保存点: savepoint 保存点名;
回滚保存点: rollback to 保存点名;
13 游标
1.定义游标
cursor 游标名 is select语句;
2.打开游标
open 游标名
3.提取游标数据
fetch 游标名 into 变量1,变量2。。。。;
或 fetch 游标名 into 记录型变量
4.关闭游标
14 过程
1.创建过程
create or replace procedure 过程名 as
声明语句段;
begin
执行语句段;
exception
异常处理语句段
end;
2.带参数的过程
in 参数 :读入参数,主程序向过程传递参数
out参数:读出参数,过程向主程序传递参数。
in out参数:双向参数
15 序列
nextval