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

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

相关推荐
m0_740653221 分钟前
Redis如何查询附近的人_利用GEORADIUS指令进行Geo范围搜索
jvm·数据库·python
Jetev1 分钟前
宝塔面板如何实现网站重定向_配置301永久跳转与域名更换
jvm·数据库·python
精益数智小屋3 分钟前
物料管理系统软件有什么用?物料管理系统软件功能详解
大数据·数据库·人工智能·自动化·精益工程
2401_833033623 分钟前
c++如何解析二进制协议中的可选字段与默认值读取逻辑实现【实战】
jvm·数据库·python
Francek Chen5 分钟前
【大数据存储与管理】云数据库:02 云数据库产品
大数据·数据库·分布式·云计算·云数据库
ChoSeitaku5 分钟前
13.MySQL使用C语言链接及图形化界面
数据库·mysql
倔强的石头1067 分钟前
【Linux 指南】文件系统系列(二):核心抽象层 —— 块 、分区 、inode 从原理到实操
linux·服务器·数据库
m0_5913647310 分钟前
CSS 背景图滑动切换:纯 CSS 实现右进左出轮播效果
jvm·数据库·python
2401_8242226910 分钟前
Python测试代码如何实现自解释_使用pytest描述性命名规范
jvm·数据库·python
woxihuan12345613 分钟前
MySQL 中高效存储与查询时间数据的最佳实践
jvm·数据库·python