以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  [求助]随机函数重复的概率  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=194348)

--  作者:洮沙
--  发布时间:2024/12/2 8:12:00
--  [求助]随机函数重复的概率
老师,麻烦问一下:
问题一:以下代码,s与s1在相同并发情况下那种重复的概率高一点?
Dim n As Integer = Rand.Next(999999)
Dim s As String = CStr(Format(n, "000000"))
Output.Show(s)

Dim n1 As Integer = Rand.Next(999)
Dim n2 As Integer = Rand.Next(999)
Dim s1 As String = CStr(Format(n1, "000")) & CStr(Format(n2, "000"))
Output.Show(s1)

问题二:通过网路监视器HttpRequest执行以下函数增加订单,增加订单函数中订单编号采用SQLCommand方法先判断是否有最大号,如果有+1递增,问题是高并发情况下是否有重号的可能?如果有,麻烦提供解决方案,谢谢!

Functions.AsyncExecute("增加订单",e)

--  作者:foxtablefanse
--  发布时间:2024/12/2 8:16:00
--  
用存储过程他不香吗?


--  作者:有点蓝
--  发布时间:2024/12/2 8:53:00
--  
问题1,差不多
2、肯定有重复。给SQLCommand加上事务,可以参考这里的方法:http://www.foxtable.com/webhelp/topics/1994.htm,但是帮助没有加事务,需加上事务:http://www.foxtable.com/webhelp/topics/3312.htm

2楼提供的存储过程方式,可以参考:http://www.foxtable.com/bbs/dispbbs.asp?boardid=2&id=159386

--  作者:191422411
--  发布时间:2024/12/2 11:56:00
--  

--  作者:洮沙
--  发布时间:2024/12/2 16:33:00
--  
感谢解答!