Quiero crear una funcion para que al pasarle una cadena, eta funcion me
transforme esos datos en un cursor,
Me funciono todo bien hasta que quise pasarla a funcion.
create function matrix (@cadena nvarchar(255))
returns nvarchar(100)
begin
declare @nombre as char(5)
declare @busca as varchar(2)
select @cadena = '301,302,303,'
select @nombre = 'au'+ dbo.alltrim((str(round(15*10000,2),0)))
select @busca = CHARINDEX(',',@cadena )
exec('CREATE TABLE '+ @nombre + '( campo1 char(5))')
WHILE CHARINDEX(',',@cadena) > 0
begin
print('insert into '+ @nombre +' select
left('''+@cadena+''','+@busca+'-1)')
exec('insert into '+ @nombre +' select
left('''+@cadena+''','+@busca+'-1)')
select @cadena = SUBSTRING(@cadena, CHARINDEX(',',@cadena )+1,99)
end
exec('select * from ' + @nombre )
exec('drop table ' + @nombre )
end
el tema es que me sale el mensaje
Uso no válido de 'rand' en una función.
¿porque no le gusta el Rand() dentro de una funcion?
Leer las respuestas