Pasar una tabla como parámetro en un procedimiento

Espero que me podáis ayudar, porque la verdad que ando un pelín perdido, veréis, necesito crear un procedimiento al cual le tengo que pasar el nombre de una tabla para hacerlo lo más general posible.
No se muy bien como hacerlo :(
Solo he llegado a poner lo típico
"create procedure nombreproc @tabla (aqui no se que poner si varchar o table)
As begin
select * from @tabla
end
Para luego hacer exec nombreproc "elnombredelatablaquequiera"
En fin.
1

1 respuesta

Respuesta
Yo utilizaría el nombre de tabla como parámetro, pero hay que tener en cuenta las implciancias del sql injection.
create procedure nombreproc (@tabla varchar(20)
Declare @SQL varchar(500)
As begin
select @SQL='select * from ' + @tabla
exec(@SQL)
end

Añade tu respuesta

Haz clic para o

Más respuestas relacionadas