Имам тази съхранена процедура, която приема име на колона като inptu параметър. Операторът SELECT ще избере колона според входния параметър
create procedure getColumn (@whichColumn varchar)
as
begin
declare @sql nvarchar(max)
set @sql = 'SELECT [' + @whichColumn + ']'
+ ' FROM myTable'
+ ' where ['+ @whichColumn + '] is not null'
+ ' and [' + @whichColumn + '] != '''' ' ;
exec sp_executesql @sql
end
Когато изпълня тази съхранена процедура,
exec getColumn 'Apple';
грешката казва "Невалидно име на колона 'A' ". Не мога да разбера защо получава само първия знак от входа