I want to use tablename variable in select statement, but it is giving error
- Must declare the table variable "@table"
alter PROCEDURE testTblName
(
@id int,
@name varchar(50)
)
AS
BEGIN
declare @table varchar(50)
declare @add varchar(150)
set @table = 'DBTest..testMaster'
select @add = address from @table where id=@id and name=@name
END
This is a snap shot of my code
You can't use a variable for your table name. When you do
select address from @table
SQL expects@table
to be a variable of the table type, not a scalar.You're looking to do something like this: