1. Пример пар. запроса где в качестве параметров скалярные значения
declare @P1 int
set @P1=10
exec sp_prepexec @P1 output, N'@P1 char(9),@P2 char(9)', N'
DECLARE @ВибТов CHAR(9), @ВибСкл CHAR(9)
SET @ВибТов = @P1
SET @ВибСкл = @P2
SELECT
КвоОстаток AS [КіЗКво $Число]
FROM (
select
rg1_vt.sp1 as ТМЦ,
sum(rg1_vt.sp3) as КвоОстаток
from rg1 as rg1_vt (nolock)
where rg1_vt.period={d ''2009-10-01''}
and ((rg1_vt.sp1 = @ВибТов) AND (rg1_vt.sp2 = @ВибСкл))
group by
rg1_vt.sp1
having
sum(rg1_vt.sp3) <> 0
) as ТЗРРег
', ' I77ZV ', ' ECB '
select @P1
Работает.
При этом исп. инструкции
ЗапПер.ДобПараметр(1, 14, 9, 0);
ЗапПер.ДобПараметр(1, 14, 9, 0);
2. Пример пар. запроса где в качестве второго параметра строка из значений
declare @P1 int
set @P1=10
exec sp_prepexec @P1 output, N'@P1 char(9),@P2 varchar(300)', N'
DECLARE @ВибТов CHAR(9), @ВибСкл CHAR(9)
SET @ВибТов = @P1
SET @ВибСкл = @P2
SELECT
КвоОстаток AS [КіЗКво $Число]
FROM (
select
rg1_vt.sp1 as ТМЦ,
sum(rg1_vt.sp3) as КвоОстаток
from rg1 as rg1_vt (nolock)
where rg1_vt.period={d ''2009-10-01''}
and ((rg1_vt.sp1 = @ВибТов) AND (rg1_vt.sp2 IN (@ВибСкл)))
group by
rg1_vt.sp1
having
sum(rg1_vt.sp3) <> 0
) as ТЗРРег
', ' I77ZV ', Строка со списком значений
select @P1
Не работает.
Какая должна быть эта
Строка со списком значений ?
При этом исп. инструкции
ЗапПер.ДобПараметр(1, 14, 9, 0);
ЗапПер.ДобПараметр(1, 15, 300, 0);