Oracle存储过程,希望有高手解答上

Oracle存储过程,希望有高手解答下我在项目中用到存储过程,大概做了个例子,像下面这样的A表有name, passwor

Oracle存储过程,希望有高手解答下
我在项目中用到存储过程,大概做了个例子,像下面这样的
A表有name, password, email几个字段
C表有phone,address字段
B表有id,name,password,email,phone,address字段
我现在想把A表和C表查出的数据,插入到B表,用存储过程写出来,不知道该怎么写。求大神解答。
A表和C表不能用联合查询查出来。
[最优解释]
那就用笛卡尔积 

INSERT INTO B (name,password,email,phone,address)
SELECT A.NAME,A.PASSWORD,A.EMAIL,C.PHONE,C.ADDRESS FROM A,C 


[其他解释]
你这是什么数据库设计?
表之间都没有主外键关联的?
[其他解释]


create table tmp_a as
select rownum ida,name, password, email
  from A;

create table tmp_b as
select rownum idb,phone,address
  from B;

insert into C
 select name, password, email,phone,address
   from tmp_a,tmp_b
  where ida=idb;

[其他解释]
屁的笛卡尔积
A表和C表没有外键关联吗


[其他解释]
要么改表结构,要不就等死吧
[其他解释]
重点就在于A/C两个表之间的关联关系
[其他解释]
A/C关联关系呢,说清楚些
[其他解释]
谢谢各位,已经解决了。