1. 使用一个变量
declare
-- Local variables here
v_name varchar2(50);
begin
-- Test statements here
select t.user_name into v_name
from pay_mer_order t
where t.id=3530816;
dbms_output.put_line(v_name);
end;
-- 2. 使用多个变量
declare
-- Local variables here
v_name varchar2(50);
v_trans_no varchar2(50);
v_app_code varchar2(50);
begin
-- Test statements here
select t.user_name, t.pay_brh_trans_no, t.app_code
into v_name, v_trans_no, v_app_code
from pay_mer_order t
where t.id=3530816;
dbms_output.put_line(v_name || ',' || v_trans_no || ',' || v_app_code);
end;
--3. 自定义记录类型
declare
-- 自定义一个记录类型
type order_info is record(
v_name varchar2(50),
v_trans_no varchar2(50),
v_app_code varchar2(50));
--声明自定义记录类型的变量
v_tmp_record order_info;
begin
select t.user_name, t.pay_brh_trans_no, t.app_code
into v_tmp_record
from pay_mer_order t
where t.id=3530816;
dbms_output.put_line(v_tmp_record.v_name || ',' || v_tmp_record.v_trans_no || ',' || v_tmp_record.v_app_code);
end;
-- 4. 使用%type定义变量,动态的获取数据的声明类型
declare
-- 定义一个记录类型
type order_info is record(
v_name pay_mer_order.user_name%type,
v_trans_no pay_mer_order.pay_brh_trans_no%type,
v_app_code pay_mer_order.app_code%type);
--声明自定义记录类型的变量
v_tmp_record order_info;
begin
select t.user_name, t.pay_brh_trans_no, t.app_code
into v_tmp_record