Как написать хранимую процедуру для динамического SQL. Этот код не возвращает строк и говорит о некорректном синтаксисе рядом с @EmpCodeСохраненная процедура для динамического SQL
Базовый запрос: http://sqlfiddle.com/#!3/6ad02e/9. Это преобразование строк в cols, если no. cols неизвестны. Я пытаюсь отправить параметры в одном запрос и просто добавил код «жирный шрифт» ...
set @query = '**DECLARE @CompanyId uniqueidentifier = null,
@EmpCode nvarchar(50) = null
IF @CompanyId='+'00000000-0000-0000-0000-000000000000'+'
SET @CompanyId = NULL
IF @EmpCode = '+''+'
SET @EmpCode = NULL**
SELECT id, name,' + @cols + '
from
(
select e.id, e.name, lt.type, l.days
from tblEmp e
left outer join tblEmpLeaves l
on e.id = l.empId
left outer join tblLeaveType lt
on l.leaveId = lt.Id
**WHERE
(E.Deleted = 0) AND
(E.EmpCompanyId = @CompanyId OR @CompanyId IS NULL)AND
(E.EmpCode LIKE %@EmpCode% OR @EmpCode IS NULL)**
) x
pivot
(
max(days)
for type in (' + @cols + ')
) p
order by id'
'E.EmpCode LIKE% @ EmpCode%' должен быть 'E.EmpCode LIKE '% @ EmpCode%'' ' – dav1dsm1th
IF @EmpCode =«+ '' + ''должен быть' IF @EmpCode =' '' '' – dav1dsm1th
Спасибо. Я изменил его на LIKE% '+ @ EmpCode +'% OR ... Он скомпилирован успешно, но возвращает 0 строк – Ruby