日期:2014-05-17  浏览次数:20761 次

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关联关系呢,说清楚些