Ver Mensaje Individual
  #1 (permalink)  
Antiguo 30/03/2006, 05:28
Avatar de nsmsndie
nsmsndie
 
Fecha de Ingreso: julio-2005
Mensajes: 61
Antigüedad: 19 años, 5 meses
Puntos: 0
Problema con funcion 'rand()'

Hola!

Resulta que estoy haciendo una función que me devuelva una palabra de 8 caracteres aleatoriamente. Pero me da error al utilizar la función "rand()".

Os pongo el código. Gracias de Antemano


Código:
CREATE Function Password_Cod()
RETURNS nvarchar(50)
AS
BEGIN

  DECLARE 
     @Password_Cod nvarchar(8),  @Cod nvarchar(8),  @Nu int,  @les nvarchar(50),
 @Le nchar(50), @I int  

     Set @les = 'AaBbCcDdEeFfGgHhIiJjKkLlMmNnPpQqRrSsTtUuVvWwXxYyZz'

     set @I = 1
     WHILE @I <= 8
     BEGIN
       
       SET Select @Nu =  cast(( (50) * rand() + 1) as int)
       SET @Le = substring(@les, @Nu, 1)
      
     END 

RETURN @Le
End

Ah! si veís algo incorrecto avisarme (es la primera función que hago )

El error es:

Servidor: mensaje 443, nivel 16, estado 1, procedimiento Password_Cod, línea 21
Uso no válido de 'rand' en una función.