to:bestdelphier
2种方法都可以实现么?要怎么弄呢?
我刚如行,比较菜  
可以讲讲么? 
多谢了

解决方案 »

  1.   

    哦,对了 我用的是sqlserver2k
      

  2.   

    数据库同步我没有用过^_^,通过程序的话:先把远程服务器上b=0的数据都select出来放到容器类中,比如一个ArrayList实例,然后调用更新本机的数据库操作,该操作中使用事务,防止你说的意外情况。事务的使用很简单,就是把connection.setAutoCommit(false),然后循环把ArrayList中存的数据存入本机数据库,最后通过connection.commit()一次性提交数据库修改,如果抛出异常的话就connection.rollback().这样就不会出现更新一半的情况了。
      

  3.   

    bestdelphier 多谢你的讨论
    但有个问题,最后我在commit()的时候,如果 far_A 中又增加了几条b=0 的数据 
    会不会 把他们也置为1,但local_A 中 并没有他们的记录呢?
      

  4.   

    插入本地数据库和更新远程数据库的操作要放到同一个事务中,只能更新你这次取到的记录的b为1,这次没有select到的是不会更新的,这需要你程序控制。置于实时性,你可以通过java.util.TimerTask类来实现,定时执行数据库更新的方法,具体的找找文档。
      

  5.   

    thank you so much
    通过你的讲解,我的理解是这样,
    1.获得远程数据库的连接
    2.选者目前b=0的 数据 放到arraylist中
    3.建立一个事务
               a:更新本地数据库
               b:更新远程数据库 b=1 (只限arraylist 中的数据)
               c:事物异常,就rollback() 。本地数据库,远程数据库 都恢复
    4.有一个TimerTask 类定时做这个1,2,3,的事情 
    你看对不? 
    能介绍一些关于java, 事务的文章么?
    这方面我也不懂
      

  6.   

    完全正确^_^至于文章,具体不知道你想要那方面也不好推荐,你到csdn的文档里去搜一下,里面很多不错的技术文章。
      

  7.   

    又遇到问题了
    一个事物里我要用到2个connction ,一个对应本地数据库,一个对应远程数据库
    我用的是tomcat 要怎么操作呢?
    我看文档上讲的一个连接用jdbc可以操作 事务
    多个连接的化,用
    UserTransaction 
    tomcat 行么?