我可以根据oracel格式的主表更改所有列的值

问题描述 投票:1回答:1

我正在oracle 11g中创建POS。在销售表格中,我有两个主表和子表,其中一列是那些表中存在的“类型”,子表在表模式下有10行。现在我要知道的是,当我在主表中更改“类型”时,在子表中插入10行之后,还可以根据主表更改子表中的所有值。我正在尝试在主表中列出项目,但它只是更改子表的当前值。如何更改子表中的所有值。

oracle oracle11g oracleforms
1个回答
1
投票

您的放置方式,有两个选择。

如果已提交更改(即,主行和明细行都存储在数据库中,则可以将明细行更新为] >>

update detail_table d set
  d.type = :master_block.type
  where d.foreign_key_column = :master_block.primary_key_item;

然后将详细信息块重新查询为

go_block('detail_block');
execute_query;

另一个是遍历详细信息块并逐行修改项目:

go_block('detail_block');
first_record;
loop
  :detail_block.type := :master_block.type;
  exit when :system.last_record = 'true';
  next_record;
end loop;
© www.soinside.com 2019 - 2024. All rights reserved.