我使用下面的函数来生成5个字母的随机密钥,但它是所有字母和数字的组合。使用SQL Server的随机密钥生成
但按照要求,我需要生成一个不包含字符'o'和'我',也不包含数字'0'和'1'的随机唯一键。
DECLARE @automateKey VARCHAR(15)
DECLARE @Length INT = 6
DECLARE @Count INT = 2
SET @Length = @Length + 1
SET @Count = @Count + 1
SELECT @automateKey =
(SELECT CAST((ABS(Checksum(NewId())) % 10) AS VARCHAR(1)) +
CHAR(ascii('A')+(Abs(Checksum(NewId()))%25)) +
LEFT(newid(),@count) Random_Number)
SELECT (@automateKey)
我不知道我怎样才能从随机密钥生成
任何人都可以请该查询帮助逃避这些特殊字符和数字?提前谢谢了。
您可以检查最后一个字符串是否含有0,1或O,L然后用 –
你提到随机一些其它字母代替而不是随机的价值。生成的密钥是否必须是唯一的(即没有dups)?解决方案将取决于该要求。 –
对不起,忘了它应该是唯一的... –