You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何在VB中格式化字符串?移除单引号后传入PLSQL参数

处理后的无单引号字符串

移除所有单引号后,得到的逗号分隔字符串如下:

BKGSSS220005823,BKGSSS220005824,BKGSSS220005786,BKGSSS220005756,BKGSSS220005858,BKGSSS220005843,BKGSSS220005845,BKGSSS220005862,BKGSSS220005777,BKGSSS220005861,BKGSSS220005867,BKGSSS220005825,BKGSSS220005863,BKGSSS220005859,BKGSSS220005878,BKGSSS220005755,BKGSSS220005877,BKGSSS220005827,BKGSSS220005879,BKGSSS220005852,BKGSSS220005831
传入PLSQL参数的两种实用方式

1. 直接作为单个字符串参数传入

如果你的PLSQL存储过程/函数接受逗号分隔的字符串参数,直接赋值调用即可:

DECLARE
  v_input VARCHAR2(1000) := 'BKGSSS220005823,BKGSSS220005824,BKGSSS220005786,BKGSSS220005756,BKGSSS220005858,BKGSSS220005843,BKGSSS220005845,BKGSSS220005862,BKGSSS220005777,BKGSSS220005861,BKGSSS220005867,BKGSSS220005825,BKGSSS220005863,BKGSSS220005859,BKGSSS220005878,BKGSSS220005755,BKGSSS220005877,BKGSSS220005827,BKGSSS220005879,BKGSSS220005852,BKGSSS220005831';
BEGIN
  -- 替换成你的实际程序名
  your_plsql_program(p_input => v_input);
END;
/

2. 拆分成集合类型参数传入

如果需要把每个编号作为独立元素处理(比如用于IN子查询),可以先将字符串拆分为PLSQL集合:

先定义集合类型(如果没有现成的)

CREATE OR REPLACE TYPE varchar2_list IS TABLE OF VARCHAR2(50);
/

拆分字符串并赋值给集合参数

DECLARE
  v_input VARCHAR2(1000) := 'BKGSSS220005823,BKGSSS220005824,BKGSSS220005786,BKGSSS220005756,BKGSSS220005858,BKGSSS220005843,BKGSSS220005845,BKGSSS220005862,BKGSSS220005777,BKGSSS220005861,BKGSSS220005867,BKGSSS220005825,BKGSSS220005863,BKGSSS220005859,BKGSSS220005878,BKGSSS220005755,BKGSSS220005877,BKGSSS220005827,BKGSSS220005879,BKGSSS220005852,BKGSSS220005831';
  v_id_list varchar2_list;
BEGIN
  -- 用正则拆分字符串并批量收集到集合中
  SELECT TRIM(REGEXP_SUBSTR(v_input, '[^,]+', 1, LEVEL))
  BULK COLLECT INTO v_id_list
  FROM DUAL
  CONNECT BY REGEXP_SUBSTR(v_input, '[^,]+', 1, LEVEL) IS NOT NULL;
  
  -- 调用接受集合参数的程序
  your_plsql_program(p_id_list => v_id_list);
END;
/

内容的提问来源于stack exchange,提问作者Manav Srivastava

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.06 20:43:52