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语句字符串末尾不能带';',刚开始报错查了全网都没有解决。

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

相关推荐
风叶悠然5 分钟前
vue3中数据的pinia的使用
前端·javascript·数据库
大鳥24 分钟前
Hive on Spark SQL 性能优化权威指南
hive·sql·spark
JosieBook24 分钟前
【数据库】2026国产时序数据库新格局与金仓的多模突围
数据库·时序数据库
羑悻的小杀马特32 分钟前
不做“孤岛”做“中枢”:拆解金仓时序库,看国产基础软件如何玩转“多模融合”
数据库·人工智能
小北方城市网33 分钟前
SpringBoot 安全认证实战(Spring Security + JWT):打造无状态安全接口体系
数据库·spring boot·后端·安全·spring·mybatis·restful
bbq粉刷匠37 分钟前
MySQL - 基础增删查改
数据库·mysql
l1t1 小时前
DeepSeek总结的SQLite 数据库的版本更新历史摘要
数据库·人工智能·sqlite
一个天蝎座 白勺 程序猿1 小时前
Apache IoTDB(13):数据处理的双刃剑——FILL空值填充与LIMIT/SLIMIT分页查询实战指南
数据库·sql·ai·apache·时序数据库·iotdb
一步一个脚印1 小时前
Oracle LONG类型与CLOB类型的比较与转换
数据库·oracle
廋到被风吹走1 小时前
【数据库】【Mysql】慢SQL深度分析:EXPLAIN 与 optimizer_trace 全解析
数据库·sql·mysql