你的代码我没有仔细看(我最烦的就是看别人的代码了)可能的原因:
1。你的设计中(表中)缺乏那种安全的校验,对于结果来说已经不重要了
2。就你的过程来说,有可能是两个人在不同的地方同时获取,但先后提交(insert)
1。你的设计中(表中)缺乏那种安全的校验,对于结果来说已经不重要了
2。就你的过程来说,有可能是两个人在不同的地方同时获取,但先后提交(insert)
调试欢乐多
----------------------------------------------------------
BEGIN TRAN
.... --定单号
.... --密码
set @cardaccount=dbo.F_CSCS_GetAccount(@cardid) --调用
COMMIT TRAN
----------------------------------------------------------先执行的事务为A,后执行的事务为B在事务A执行完 set @cardaccount=dbo.F_CSCS_GetAccount(@cardid) 语句之后,并且执行COMMIT TRAN之前事务B也执行到了 set @cardaccount=dbo.F_CSCS_GetAccount(@cardid) 语句
我后来就是想了这个假设,和你的意思一样,那怎么解决这个问题,不是必然
但有可能发生!但是几率又不大,至少对我们来说!