oracle数据库,d5 bde开发
问题是这样的:
比如:a,b同时 打开了记录REC1
a 保存后,b再保存,那么b就把a刚修改的内容覆盖了。怎么处理?

解决方案 »

  1.   

    Table1.DisableControls;
      try
        try
          Database1.StartTransaction;
          {Write Table};                  
        except
          Database1.Rollback;  //失敗
          raise;
          exit;
        end;
      finally
        Table1.EnableControls ;
      end;
      Database1.Commit;       //成功説明:用「Transaction」処理。
       不過也不用想的太复杂了、Oracle自身都有解決。
      

  2.   

    Select for Update  //行锁。其他用户用Select可以看无法修改。如果也用Select for Update 
    将看不到其他用户的Select for Update记录。
    对性能有影响,Select for Update每次都导致磁盘写