oracle学习(一)

本文介绍了PL/SQL中的不同类型的变量,包括标量变量、复合变量和参照变量,并详细解释了存储过程和函数的区别,以及触发器的概念。此外,还提供了具体的示例来演示如何使用这些变量。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

[b]pl/sql块 [/b]
包括命名快和匿名块以及子程序

子程序 包括 存储过程、函数、包、触发器。。。

存储过程和函数有什么区别吗?

触发器是隐含执行的存储过程!

存储过程是执行特定的操作,而函数是用于返回特定的数据。。。

[b]
oracle 变量 [/b]
1、标量变量:是之智能存放单个数值的变量,最常用的就是标量变量
定义语法:identifier [constant] datatype [NOT NULL] [:= | DEFAULT expr]
说明: expr可以是文本值、其它变量或者函数
2、复合变量:有PL/SQL记录pl/sql记录类似于高级语言中的结构
  eg: 
declare
type emp_record_type is record(
name emp.ename%type;
);
emp_record emp_record_type;
begin
select ename into emp_record from emp;
dbms_output.put_line(emp_record.name);
end;

3、参照变量:是指用于存放数值指针的变量,通过使用参照变量,可以使得应用程序共享相同对象,从而降低存储空间
在编写pl/sql时可以使用ref cursor(游标变量)和对象类型变量ref obj_type

游标变量:
eg:
declare 
type ol is ref cursor;
emp_cursor ol;
v_ename emp.ENAME%type;
v_sal emp.SAL%type;
begin
open emp_cursor for select ename,sal from emp;
loop
fetch emp_cursor into v_ename,v_sal ;
DBMS_OUTPUT.put_line(v_ename||'++++++++'||v_sal);
EXIT when emp_cursor%NOTFOUND;
end loop;
close emp_cursor;
end;
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值