pl / sql复制多对多数据

时间:2016-02-27 04:31:39

标签: plsql mod-plsql

我出于商业目的对我的数据库进行逆向工程,我会保持简短。我有两个表(a_visit,b_visit)和桥接表(a_to_b_visit),两者都有外键ID。 我需要根据具有新预算ID的budget_id将插入复制到A_visit,b_visit,并处理桥接表关系。如何动态处理id或将记录插入到桥接表中。例如,我将插入新记录将pl / sql用于表A_visit,b_visit。

  insert into a_visit 
  select new_seq_id,<new budget_id>,<other columns>  from a_visit where budget_id=10
   insert into b_visit 
  select new_seq_id,<new budget_id>,<other columns>  from b_visit where budget_id=10
   insert into a_b_visit
    select new_seq_id,a_visit_id,b_visit_id from a_to_b_visit
     where a_visit_id=  old_a_id=<> and b_visit_id=old_b_id

(我将从其他程序动态获取budget_id。)

TABLE A_VISIT
 id, budget_id
1, 10
2, 10

 TABLE B_VISIT
 id, budget_id
  4, 10
  5, 10

 A_TO_B_VISIT
  id,a_id,b_id(unq(a_id,b_id))
   1, 1,4
   2, 2,4

我试图通过pl / sql解决上面的问题,我坚持用新的生成映射来解决现有的桥接问题。 请指教!!。希望我没有太多混淆

1 个答案:

答案 0 :(得分:0)

能够通过在桥接临时表中记录id&d并在循环中稍后更新id来修复。