VB.NET生成随机确认号

时间:2012-05-15 21:12:52

标签: vb.net

我有一个属性,我刚刚添加到我的数据库中以保存确认号码。唯一的问题是它们都是空的,所以我得到错误。因此,我需要一种方法来生成随机确认号(没有重复)。列条目的最大大小为varchar(20)。任何想法如何做到这一点?感谢

解决方案:

        randNum = Replace(Guid.NewGuid().ToString(), "-", "")
        randNum = randNum.Substring(0, 19)

2 个答案:

答案 0 :(得分:0)

做了一分钟的研究并发现了这些例子。

VB中的随机数:Random integer in VB.NET

SQL Server中的随机数:http://www.sql-server-helper.com/tips/generate-random-numbers.aspx

如果你不想使用没有任何意义的数字(如果你只是填充列以避免错误),你可以在.NET端使你的变量可以为空,这样它就可以容纳一个空值。

Dim MyInt? as Integer

编辑:

你可以创建一个GUID,删除破折号并将其剪切为20个字符,这仍然不太可能重复。

编辑#2:如果您正在使用存储过程为新记录/更改记录执行这些更新(您应该这样做),则可以在SQL端创建随机数并将其作为OUTPUT变量返回。这将使您验证记录是否已创建/更新,并为您提供在.NET端提供的确认。

编辑#3:myGuild.ToString()。替换(“ - ”,“”)。子串(0,20)应该可以解决问题。

答案 1 :(得分:-1)

尝试生成GUID,这将始终不同

Guid.NewGuid().ToString()