存储过程并发,存储过程在同一个时间里面执行了多次,导致数据多次修改

数据库:MSSQL2008 R2
2024-10-28 13:10:08
推荐回答(4个)
回答1:

在调用存储过程的程序中加上线程同步控制,避免同时调用

java程序示例

    private static final Object payLock = new Object();
    public void pay(){
        synchronized (payLock) {
            //TODO 下方写调用存粹过程的调用
        }
    }

回答2:

这个问题显然不应该去数据库查,你最先应该看前端是否有重复提交的限制,或者直接在后台加安全锁。

回答3:

如果这样的话,提升事务等级罗……

回答4:

只能在页面逻辑中进行防呆处理