PLSQL-基本语法与记录类型

1.基本语法

–执行该句才会输出到控制台
set serveroutput on

declare
--声明的变量、类型和游标

begin
--程序的执行部门(类似于java中的main方法)
dbms_output.put_line('helloworld');//直接输出到控制台

exception
--针对begin块中出现的异常如何处理
--when...then...
--when...then...

--end;

memo1:

declare
--声明变量
--v_sal number(10,2) := 0 --[使用:=进行赋值操作,使用=进行比较操作];
v_sal employees.salary%type;--动态获取数据类型
v_email varchar2(20);
v_hire_date date;

begin
--sql语句的操作:select...into...from...where
select salary,email,hire_date into v_sal,v_email,v_hire_date from employees
where employee_id = 100;
--打印
dbms_output.put_line(v_sal||','||v_email||','||to_char(v_hire_date,'yyyy-mm-dd'));

end;

2.记录类型

declare
--声明记录类型
type emp_record is record(
v_sal employees.salary%type,--动态获取数据类型
v_email varchar2(20),//注意是逗号,最后一行不加
v_hire_date date
);

--定义一个记录类型的成员变量

v_emp_record emp_record;//类似于java中类与成员变量的关系

【--以employees表中的所有的列定义记录类型
--v_emp_record employees%rowtype;】

begin
--sql语句的操作:select...into...from...where
select salary,email,hire_date into
v_emp_record from employees
where employee_id = 100;
--打印
dbms_output.put_line(v_emp_record.v_sal||','||v_emp_record.v_email||','||to_char(v_emp_record.v_hire_date,'yyyy-mm-dd'));

end;


--------------memo2-修改-----------------------

declare

v_emp_id number(10);

begin

v_emp_id := 123;--进行赋值操作

update employees set salart = salart+100 where employee_id = v_emp_id;--这里是“=”

dbms_output.put_line('执行成功')

end;

3.游标与记录类型综合

declare

--声明一个记录类型
type emp_record is record(
v_sal employees.salary%type,
v_empid employees.employee_id%type
);

--声明一个记录类型的变量
v_emp_record emp_record;

--定义游标
cursor emp_sal_cursor is select salary ,employee_id from employees
where department_id = 80;

begin

--打开游标
open emp_sal_cursor;

--提取游标
fetch emp_sal_cursor into v_emp_record;

while emp_sal_cursor % found loop
dbms_output.put_line('emp_id :'||v_emp_record.v_empid||','||'salary :'||v_emp_record.v_sal);
fetch emp_sal_cursor into v_emp_record;

end loop;

--关闭游标
close emp_sal_cursor;

end;
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

流烟默

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值