<script> window.close()</script>

解决方案 »

  1.   

    To martinding(martinding):我敢打赌,你没有研究过任何关于DataWare Control的源代码。
    我坚决支持使用。DataWare Control的功能在于自动显示数据库相关字段的内容,自动存在任何改变。在此之外,没有多余的功能了。从来没有一个DataWare Control会去锁数据库。
    我写过十几个DataWare Control,从来不知道这么去锁。
    不用DataWare Control等于放弃了Delphi在数据库的强大功能,是自己给自己找麻烦。
      

  2.   

    to kuangning 请能说明不用的理由吗
      

  3.   

    DataWare Control和事务没有任何关系。
    你要做事务,那么必须处理好你自己的Dataset。主/从结构也是这样。
      

  4.   

    怎么处理好?
    在 Dataset Edit() 前调用 BeginTran?
    如果在 Edit() 前调用,那么如果用户长时没有存档,数据库不是被锁住了吗?
    如果在存档时开始事务,那么用户的修改不是没进入事务吗?
      

  5.   

    你的这个存档还是因为Dataset的问题。Dataset.edit在锁数据库。当然,这是不使用CacheUpdate造成的。实际上,当前C/S结构的数据库编程都应该使用CacheUpdate。
    如果使用CacheUpdate,edit,insert都不至于去锁数据。Delphi提供的东西当然是方便大家的编程了,哪有提供的东西给大家制造麻烦的道理。
      

  6.   

    谢谢 chechy!!
    edit() 不锁数据库,但事务会锁住数据库
    我的意思是 何时调用事务,
      就像一个表格控件,有好几行,用户可以修改其中的任意行,
    但我须保证这几行要么都提交成功,要么都失败
    所以只有在用户按了<存档>后 才,commit tran
    但我想知道我该何时启动事务( begin tran)
    多谢,
    你可以到http://www.csdn.net/expert/topic/215/215350.shtm 拿分