工作总结
--1. 传入很多值
定义:
TYPE s_tbl IS TABLE OF VARCHAR2(1000);
tbl_name s_tbl;
使用写法:
tbl_name := s_tbl('xx','xx','xx');
--2. 数组的使用
数组的定义:
type var IS TABLE OF number;
s_val var:=var();
使用写法:
s_val.extend; --***扩展
s_val(i) := to_number(valuess); --传值
--3. 接收值
函数传入参数 有out的可以在外面用一个值接收如下:
valuess := get_ebnk_param('201',s_filter(1));
--4. 自治事件**
pragma autonomous_transaction
--5. 获取动户参数数据处理
-- execute immediate 的使用方法 into
function get_ebnk_param(dtl_type varchar2,field varchar2) return varchar2 is
valuess varchar2(10);
pragma autonomous_transaction;
begin
execute immediate 'select '||field||' from crmd_ebnk_param where chn_type='''||dtl_type||''' ' into valuess ;
return valuess;
DBMS_OUTPUT.PUT_LINE(valuess);
EXCEPTION
when no_data_found then
valuess := null;
DBMS_OUTPUT.PUT_LINE(crm_batch_public.crm_gettime_fun||'----错误代码:'||SQLCODE||'---'||'错误信息:'||SQLERRM);
return valuess;
end;
--6. merge into的用法
①
可省略的update 或者insert
MERGE INTO products p
USING newproducts np
ON (p.product_id = np.product_id)
WHEN MATCHED THEN
UPDATE SET p.product_name = np.product_name,
p.category = np.category
WHEN NOT MATCHED THEN
INSERT VALUES (np.product_id, np.product_name, np.category)
②
--delete 子句
merge into products p
using newproducts np
on(p.product_id = np.product_id)
when matched then
update
set p.product_name = np.product_name
delete where category = 'macle1_cate';
--*****需要注意
--7. 异常的抛出
--8. 拼接字符串
--9. 配置 mkfile 文件