分布式数据库用起来到底怎么
跟你的数据、需求和你的网络环境有关实际上,创建 database  link 
比如 create database link mylink ....select * from tableA@mylink 这样就是这个link所指向的远程数据库上的表再创建一个同义词  tableA  替代 tableA@mylink
则  本地就可以 select * from tableA ;

解决方案 »

  1.   

    ——哦,明白了。可是数据库到底是怎么执行的呢?比如它看到tableA,自然它会明白这是tableA@mylink,也就是另外一个地方(比如武汉)的数据库中的表tableA。它是将数据库查询语句传到武汉去执行,然后将查询的结果传回来呢;还是将武汉的tableA中的所有数据都传回来后,在这边来执行数据库查询语句。简单点说:这个数据库查询语句到底是在哪里执行的?
    ——还有,如果是联表查询,一个表在北京,一个表在武汉,数据库又是怎么做的呢?
      

  2.   


    估计是这样的
    sql->local database(mylink)->sqlnet->remote database
      

  3.   

    联表查询,一个表在北京,一个表在武汉,怎么做?比如下面的查询:
    SELECT a.家庭住址 
    FROM StudentInfo a
    INNER JOIN Student b ON a.ID=b.ID
    WHERE a.ID=5
    必须把其中一个表的数据拿到另外一个数据库吧。当然,如果数据库比较聪明,这只需拿ID=5的那一部分数据。
      

  4.   

    just  do  it, man !看看究竟是你聪明还是数据库聪明!数据库执行的时候到底怎么执行
    那是要涉及到优化器的选择问题你为什么不自己动手去试一下呢?
    还在这里迷茫?
      

  5.   

    ——kao,也不是什么事情都有时间去验证呀,哪有时间。
    ——再说,也没有那么多机器。
      

  6.   

    1:这个验证,我想你只要不到1小时足够了
    2:需要那么多机器么?最多两台就足够了,不是么?
    3:你用脑子想一想,oracle会那么笨把全部数据取过来么?
    4:假如从远程1亿条数据中取一条出来,oracle会把1亿条取到本地然后查询?你认为oracle的人是笨蛋?疯子?用你的脑子想一想,你都能想到这一点,人家会想不到?在这里考有什么用,不论怎么说你都不信,那有什么办法,你要相信,你能想到的问题别人一定能想到,只有极少数天才想到的解决办法别人才想不到。如果有什么好的实现办法,oracle没有按照你的思路去执行,那一定是有更深层的原因!!!