我有一个表,其中的一列每行包含多个、一个或没有值。
使用 Apex,我认为可以自动定义这些值的唯一字段(需要动态填充,因为可以更改)是穿梭。
有没有办法将列值更改为穿梭列表?将右侧的值作为逗号分隔值(或其他任何值)输入到数据库的列中?
例如我的表:用户 varchar - 只是他们的名字 Role(s) varchar - 与该用户相关的无/一个/多个角色分隔
谢谢,瑞克
我有一个表,其中的一列每行包含多个、一个或没有值。
使用 Apex,我认为可以自动定义这些值的唯一字段(需要动态填充,因为可以更改)是穿梭。
有没有办法将列值更改为穿梭列表?将右侧的值作为逗号分隔值(或其他任何值)输入到数据库的列中?
例如我的表:用户 varchar - 只是他们的名字 Role(s) varchar - 与该用户相关的无/一个/多个角色分隔
谢谢,瑞克
如果您希望将值存储在这样的单个列中:
角色 1:角色 2:角色 3
然后穿梭机可以满足您的一切需求。保存页面时,您在穿梭右侧选择的任何值都使用冒号作为项目值连接在一起。同样,当从数据库中加载像“ROLE6:ROLE7”这样的值时,这两个角色将出现在穿梭机的右侧。
如果您想将它们分开存储在单独的数据库行中,您可以使用以下函数apex_util.string_to_table
:
declare
l_tab apex_application_global.vc_arr2;
begin
l_tab := apex_util.string_to_table(:p1_role_shuttle);
for i in 1..l_tab.count loop
-- l_tab(i) contains the i'th role selected.
end loop;
end;
也有apex_util.table_to_string
做相反的事情。