ORACLE PL/SQL EXECUTE IMMEDIATE执行表中字段SQL语句,表字段为SQL语句如何批量执行 ,存储过程批量处理SQL语句

遇到一个需求:

excel表里面登记了需要校验数据的规则类型和校验语句,希望能将该过程固化下来,一次性执行。

我想到的办法:

1、将该表入库

2、批量执行表中的SQL语句字段

3、将校验的结果更新到第三列。

注意:本需求点是orcal中的表字段的字段值为SQL语句。

这是我的原表,其中第二例为SQL语句

主要方法还是用存储过程解决。

开始

SQL 复制代码
DECLARE 
v_sql VARCHAR2(255);
SQL_RS VARCHAR(2);
UP_SQL VARCHAR2(255);
BEGIN
  FOR r IN (SELECT JY_SQL  FROM TB_SQL) LOOP
	 v_sql := r.JY_SQL;
     EXECUTE IMMEDIATE REPLACE(r.JY_SQL,';','') INTO SQL_RS; -- 一定要把封号删除,不然肯定报错
     UP_SQL := 'UPDATE RULE_JY SET JY_REASON =: 1  WHERE JY_SQL =:2'; --将结果存储在第三列JY_REASON
     EXECUTE IMMEDIATE UP_SQL USING SQL_RS, V_SQL;
  END LOOP;
END;

注:EXECUTE IMMEDIATE 后面的sql语句字符串末尾不能带';',刚开始报错查了全网都没有解决。

整理和无私分享不易,点赞是对我最大的鼓励,(#.#)

相关推荐
二等饼干~za898668几秒前
Geo优化源码开发:关键技术解析与实践
数据库·sql·重构·mybatis·音视频
木易双人青8 分钟前
redis面试八股文总结
数据库·redis·面试
Coder_Boy_11 分钟前
基于SpringAI的在线考试系统-教学管理与用户管理模块联合回归测试文档
java·前端·数据库·人工智能·spring boot
熊文豪14 分钟前
时序数据库选型指南:工业物联网时代的数据管理之道
数据库·物联网·时序数据库·iotdb
攻心的子乐16 分钟前
sql 性能调优
数据库·sql
玩大数据的龙威17 分钟前
农经权二轮延包—一键出承包地块调查表
数据库·python
砚边数影23 分钟前
DL4J框架入门(三):基础配置,计算后端(CPU/GPU)选型与优化
java·数据库·人工智能·ai·金仓数据库
龚礼鹏25 分钟前
图像显示框架九——Surface/SurfaceControl基础概念(基于Android15源码分析)
数据库·sql
TDengine (老段)30 分钟前
TDengine REST API 使用手册
大数据·数据库·物联网·restful·时序数据库·tdengine·涛思数据
扑火的小飞蛾35 分钟前
PostgreSQL 16.1 安装指南
数据库·postgresql