Jquery Oracle apex如何从复选框中获取值并将其插入到特定表中

Jquery Oracle apex如何从复选框中获取值并将其插入到特定表中,jquery,sql,oracle,oracle-apex,Jquery,Sql,Oracle,Oracle Apex,我对从名为:P5_列表的复选框列表中获取值并将这些值插入到特定表中有疑问。我有一个名为ST_COURSE的表,其中实体US_ID是指用户学生ID,C_代码是指课程代码。问题的解决方案如下: 学生点击“注册”按钮后,检查他想要注册的课程。点击“注册”按钮后,我希望登录用户的ID和所选课程进入表ST_COURSE。我尝试了此查询,但不起作用: insert into ST_COURSE(US_ID,C_CODE)values(:APP_USER,:P5_LIST); 你知道怎么做吗 谢谢P5_列表

我对从名为:P5_列表的复选框列表中获取值并将这些值插入到特定表中有疑问。我有一个名为ST_COURSE的表,其中实体US_ID是指用户学生ID,C_代码是指课程代码。问题的解决方案如下:

学生点击“注册”按钮后,检查他想要注册的课程。点击“注册”按钮后,我希望登录用户的ID和所选课程进入表ST_COURSE。我尝试了此查询,但不起作用:

insert into ST_COURSE(US_ID,C_CODE)values(:APP_USER,:P5_LIST);
你知道怎么做吗


谢谢

P5_列表
将包含以冒号分隔的选定值列表。可以使用
APEX\u字符串
api将其拆分为各个值。 您可以循环pl/sql块中的值,并在每行插入一个选定值:

BEGIN
  FOR r IN (SELECT column_value FROM table(apex_string.split(: P5_LIST,':')))
  LOOP
    insert into ST_COURSE(US_ID,C_CODE)values(:APP_USER,r.column_value); 
  END LOOP;
END;

科恩说了P5清单的样子。另一种选择是避免循环,使用单个
INSERT
语句,其
SELECT
部分将
P5\u列表的值拆分为行

插入st_课程(us_id,c_代码)
选择:应用程序用户,
regexp_substr(:P5_LIST,[^::+',1,level)
来自双重

按级别连接使用函数apex_string.split获得所需结果

此函数用于在分隔符处拆分输入clob

BEGIN
  FOR rec IN (SELECT column_value 
                 FROM table(apex_string.split(:P5_LIST,':')))
  LOOP
    INSERT INTO ST_COURSE(US_ID
                         ,C_CODE)
                  VALUES(:APP_USER
                        ,rec.column_value); 
  END LOOP;
END;
要了解有关apex_string.split的更多信息,请访问以下链接:


我只想补充一点,这个答案是纯sql的,而我的答案是pl/sql。在apex应用程序中,您选择哪一个应该无关紧要。
BEGIN
  FOR rec IN (SELECT column_value 
                 FROM table(apex_string.split(:P5_LIST,':')))
  LOOP
    INSERT INTO ST_COURSE(US_ID
                         ,C_CODE)
                  VALUES(:APP_USER
                        ,rec.column_value); 
  END LOOP;
END;