首页 >

Oracle编写带数组参数的存储过程

数据库|mysql教程Oracle编写带数组参数的存储过程
Oracle存储过程,Oracle数组,Oracle存储过程
数据库-mysql教程
手机卡号商城源码,vscode连不上git,ubuntu服务器用户修改密码,tomcat 7 /lib,qt sqlite命令返回,mvc 插件式开发框架,jsp可以引入前端框架吗,招聘网站爬虫流程,php页面加载,谷歌seo 翻译,网站跳转淘宝 error1.html,js加密网页源文件,食品模板下载,红包多功能程序lzw
–功能:采用存储过程、type组合来实现批量操作,以节省系统开销,提高效率。 –创建 Type bodies CREATE OR REPLACE TY
js源码防盗,vscode引入背景图片,ubuntu版本amd,启动tomcat后退出,专业文献爬虫,php代码评审,黄石广告seo推广都有哪些渠道lzw
私彩源码下载,ubuntu蓝牙接受文件,tomcat不能用小端口,python 爬虫 查看,php授权系统源码2019,seo 总结lzw

–功能:采用存储过程、type组合来实现批量操作,以节省系统开销,提高效率。

–创建 Type bodies
CREATE OR REPLACE TYPE TYPE_ARRAY AS OBJECT
(
ID NUMBER(10),
REMARK VARCHAR2(10)
)
–创建 Types
CREATE OR REPLACE TYPE TYPE_ARRAY_TBL AS TABLE OF TYPE_ARRAY
–创建表
CREATE TABLE T_TEMP(ID NUMBER(10) NOT NULL, REMARK NUMBER(10))
–创建存储过程
CREATE OR REPLACE PROCEDURE PROC_ARRAY_PARAM(TYPE_OBJECT IN TYPE_ARRAY_TBL) IS

BEGIN
INSERT INTO T_TEMP
(ID, REMARK)
SELECT ID, REMARK
FROM THE (SELECT CAST(TYPE_OBJECT AS TYPE_ARRAY_TBL) FROM DUAL);

FOR I IN 1 .. TYPE_OBJECT.COUNT LOOP
DELETE FROM T_TEMP WHERE ID = TO_NUMBER(TYPE_OBJECT(I));
END LOOP;
COMMIT;
END;

END PROC_ARRAY_PARAM;

–创建包
CREATE OR REPLACE PACKAGE PKG_PARAM AS
TYPE ARRAY_PARAMS IS TABLE OF VARCHAR2(20) INDEX BY BINARY_INTEGER; –先定义包,这个就相当于一个数组
PROCEDURE PROC_PARAM(PARAMS IN ARRAY_PARAMS);
END PKG_PARAM;
–创建包体
CREATE OR REPLACE PACKAGE BODY PKG_PARAM AS
PROCEDURE PROC_PARAM(PARAMS IN ARRAY_PARAMS) AS
I NUMBER := 1; –这个可以不写
BEGIN
SAVEPOINT SP1;
FOR I IN 1 .. PARAMS.COUNT LOOP
DELETE FROM T_TEMP WHERE ID = TO_NUMBER(PARAMS(I));
END LOOP;
COMMIT;
EXCEPTION
WHEN OTHERS THEN
ROLLBACK TO SAVEPOINT SP1;
END PROC_PARAM;
END PKG_PARAM;


Oracle编写带数组参数的存储过程
  • Oracle存储过程 - 数据库 - 前端|
  • Oracle存储过程 - 数据库 - 前端| | Oracle存储过程 - 数据库 - 前端| ...

    Oracle编写带数组参数的存储过程
  • 用脚本调用Oracle存储过程
  • 用脚本调用Oracle存储过程 | 用脚本调用Oracle存储过程 ...

    Oracle编写带数组参数的存储过程
  • Java中调用Oracle中的存储过程的单元测试代码
  • Java中调用Oracle中的存储过程的单元测试代码 | Java中调用Oracle中的存储过程的单元测试代码 ...