该软件同时有多人在使用.在一个界面里,当FORMLOAD的时候,通过在类模块写的一个连接数据库的过程查询回来一条记录,这个时候RECORDSET是设为只读的.在界面里显示记录的部分字段以后,其中有一部分是可以被用户修改的,然后用户点击保存以后,系统需要把这部分可以修改的字段值更新回数据库.问题来了,因为多人使用,所以,在用户点击保存以后,系统需要将数据库里该条记录锁定住,不让别的用户在保存的过程中修改这条记录,一旦保存完以后,就将锁定取消,别的用户也可以使用了.查询记录的条件字段为 sNo .我不清楚如何做这个更新的过程,当然这个更新的过程也要写在类模块里.高手指教,详细的.锁定的时候好象要用什么动态锁,就是CONNECTION或者RECORDSET的什么锁定之类的属性,实在没搞清楚具体怎么用.

解决方案 »

  1.   

    我一直使用的是非连接式访问数据库,从来没有考虑过锁定问题.
    因为,在更新一条记录时分,封装在一个事务里分两步执行.1.根据关键字删除一次记录.
    2.再用INSERT INTO 插入记录,很少使用UPDATE.这种方法对于多用户环境时非常用.因为,我根本就不考虑锁定那条记录,开放那条记录的问题.如果有两个用户同时更新...也会有先后之分(因为当更新某条数据时,数据库会自动锁定该记录).谁最后更新,谁的数据有效....但是这种情况如果在程序和数据库中处理得好根本就不会发生(两个用户同时更新记录的情况)...