各位兄弟:现在有一个问题,我开发了一个小的系统,使用的是SQL Server2000数据库,可以同时有很多用户使用,我想实现这样的功能:如果某一个用户在编辑一条数据时(例如,一个产品信息),其他用户不可以打开并编辑,并且要收到一条提示信息:这条产品记录正在被谁在编辑中。
给个思路,怎样控制比较好,先谢谢了

解决方案 »

  1.   

    1.可以在表中加一个字段,如果这个记录被打开,那么就修改这个字段。
    2.在表中加一个版本号的字段,每一次修改号加1,
    比较说现在有一个记录,这条记录的版本号字段叫VERSION_NO,假设当前为3(也就表示被修改过三次)
    现在A和B用户同时取出这第数据,当其中一个用户保存时,首先判断当前的版本号是不是和自己的版本号一致,如果一致则保存,并且让VERSION_NO加1,就是4了
    当另一个用户来保存的时候版本号已经变了,这样就不会成功了,这时就可以给出提示消息了。