0

我想创建一个为给定长度生成随机密码的函数。它应该生成至少 8 个长度的密码,其中包括至少 2 个数字、3 个字母、3 个特殊字符,例如:a8b*4/c1+

我找到了一些代码并将其混合在一起,但我无法正确执行任何人都可以帮助我了解如何创建此功能。

 CREATE FUNCTION random_password(@length ID)
    RETURNS VARCHAR(8)
    AS
    BEGIN
       -- Declare the variables here
       DECLARE @Result VARCHAR(8)
       DECLARE @BinaryData VARBINARY(8)
       DECLARE @CharacterData VARCHAR(8)
       DECLARE @randval VARCHAR(8)
       randval = CRYPT_GEN_RANDOM(8)
    
       SELECT @BinaryData = randval
       FROM vRandom
     
       Set @CharacterData=cast ('' as xml).value ('xs:base64Binary(sql:variable("@BinaryData"))',
                       'varchar (max)')
       
       SET @Result = @CharacterData
       
       -- Return the result of the function
       RETURN @Result
    END
4

0 回答 0