Иногда возникает необходимость сбросить пароль с помощью временного пароля или сгенерировать случайный пароль для нового пользователя.
Следующая хранимая процедура создает строки случайных символов на основе четырех параметров, которые конфигурируют результат.
> create proc [dbo].uspRandChars
> @len int,
> @min tinyint = 48,
> @range tinyint = 74,
> @exclude varchar(50) = '0:;<=>?@O[]`^\/',
> @output varchar(50) output as
> declare @char char
> set @output = ''
>
> while @len > 0 begin
> select @char = char(round(rand() * @range + @min, 0))
> if charindex(@char, @exclude) = 0 begin
> set @output += @char
> set @len = @len - 1
> end
> end