现在我需要将 user1用户下的两张表中(假如两张表名分别为:A,B)的数据抽取出来,通过一个存储过程,然后将抽取查询出来的数据存到用户user2的一张表中(为C表),这个存储过程怎么写?关键一点是:在这个存储过程中怎么连接到另外一个用户!然后把当前用户下面的数据放到另外一个数据库中求解!  最好能给个代码!  感激不尽!

解决方案 »

  1.   

    insert into user2.c as 
    select A.字段1,A.....M,B.字段1,B.....
    from user1.A A,user1.B  B 
    where 条件
      

  2.   

    user2首先赋予user1访问它所拥有的表的select权限,然后user1访问user2的表时,在表的前面加上前缀user2.就行了。比如user2.intervention_f.
      

  3.   

    夸用户
    首先必须的有表的访问权限 其实 就是 
    insert into user2.c  select ... from user1.a t,user1.b k where t.col=k.col 
    夸库必须是dblink 你先创建个链接 link 
    insert into user2.c@link  select ... from user1.a t,user1.b k where t.col=k.col
      

  4.   

    http://database.51cto.com/art/201004/194168.htm这个已经能够解决了!
      

  5.   


      
    insert into user2.c@link select ... from user1.a t,user1.b k where t.col=k.col这句话应该错了吧,user2是目标对象,user1才是源,是不是改反过来insert into user2.c as select  ... from user1.a@link t ,user1.b@link k where  t.col=k.col
    不过这样是错的! 会报缺少关键字values,有点奇怪!
      

  6.   


    已经自己搞定了纠正你一个错误点:
    insert into user2.c as select ... from user1.a@link t ,user1.b@link k 
    where t.col=k.col这个as是不需要的