Oracle PL/SQL学习之基础篇
Posted ZeroMZ
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Oracle PL/SQL学习之基础篇相关的知识,希望对你有一定的参考价值。
1、PL/SQL,全称Procedure Language/SQL,过程化sql语言
PL/SQL的程序结构
declare
--声明部分(包括变量、光标、例外声明)
begin
--语句序列(DML语句)
exception
--例外处理语句
end;
/
2、声明部分
(1)定义基本变量,类型:char,varchar2,date,number,boolean,long
(2)变量的赋值方式: :=,into关键字
(3)引用型变量、记录型变量
引用型变量:emp_ename emp.ename%type;
记录型变量:emp_rec emp%rowtype;
select * into emp_rec from emp where eno=7839;
dbms_ouput.put_line(emp_rec.ename||\' \'||emp_rec.sal);--相当于给emp起了个别名
3、程序体部分
(1)分支语句
if 条件 then
语句序列1;
elsif
语句序列2;
else
语句序列3;
end if;
(2)循环体
1)形式1
while i<=10 loop i :=i+1; end loop;
2)形式2
loop exit when 条件; ...... end loop;
3)形式3
for i in 1..10 loop 语句序列; end loop;
4、光标/游标,其实是结果集
基本格式:cursor 光标名 [(参数名 数据类型 [,参数名 数据类型])...]
is select 语句;
属性:%found、%notfound --是否有记录
%isopen --判断光标是否打开
%rowcount --影响的行数
光标数限制:
在sqlplus中连接sys用户
conn sys/password@127.0.0.1:1521/orcl as sysdba
查看配置参数:
show parameter cursor
修改光标数的设置:
alter system set open_cursors=400 scope=both;
scope的取值:both,memory(只更改当前实例,不更改参数文件),spfile(只更改参数文件,不更改当前实例,并且数据库需要重启)
带参数的光标,在open的时候,将参数传递给光标。
5、fetch抓取一行记录
fetch 光标名 into 字段1,字段2...;--与open光标时候的字段对应
6、事务:原子性、一致性、隔离性、持久性
以上是关于Oracle PL/SQL学习之基础篇的主要内容,如果未能解决你的问题,请参考以下文章