我正在oracle 11g中创建POS。在销售表格中,我有两个主表和子表,其中一列是那些表中存在的“类型”,子表在表模式下有10行。现在我要知道的是,当我在主表中更改“类型”时,在子表中插入10行之后,还可以根据主表更改子表中的所有值。我正在尝试在主表中列出项目,但它只是更改子表的当前值。如何更改子表中的所有值。
您的放置方式,有两个选择。
如果已提交更改(即,主行和明细行都存储在数据库中,则可以将明细行更新为] >>
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;