I want to use a table in a dynamic query. But columns of table are not fixed and they may change.
declare @t table(ID int, Fname varchar(50), Lname varchar(50)); -- Columns may change
insert into @t(ID, Fname, Lname)
values
(1, 'Jack', 'Martinez'),
(2, 'Alex', 'Desoza');
I have tried below code:
declare @tablename nvarchar(max) = '@t'
declare @query nvarchar(max) = 'select * from '+ @tablename
exec sp_executesql @query
But the only thing I get is :
Must declare the scalar variable "@t".