我尝试这个SQL查询
select
count(tblVV.PName) as total,
tblVV.PName
from
tblVV
inner join
tblRV on tblVV.MID = tblRV.ID
inner join
tblReg on tblRV.RID = tblReg.RID
where
tblReg.StartDate>= '2016-07-01 00:00:00' and
tblReg.EndDate<= '2016-07-31 23:59:59' and
tblReg.Region = 'uk' and
tblRegionVehicles_Uni.RegNo = 'BE82' and
tblVV.PName <>''
group by
tblVV.PName
这显示了这样的结果
total PName
1 Sugar
11 Apple
现在我创建一个像这样的
相同查询的存储过程create procedure sp_ownerdata
@fromdate datetime,
@todate datetime,
@region varchar,
@RegNo varchar
as
select
count(tblVV.PName) as total,
tblVV.PName
from
tblVV
inner join
tblRV on tblVV.MID = tblRV.ID
inner join
tblReg on tblRV.RID = tblReg.RID
where
tblReg.StartDate >= @fromdate and
tblReg.EndDate <= @todate and
tblReg.Region = @region and
tblRegionVehicles_Uni.RegNo = @RegNo and
tblVV.PName <>''
group by
tblVV.PName
并按此执行
execute sp_ownerdata '2016-07-01 00:00:00','2016-07-31 23:59:59','uk','BE82'
然后,当我执行存储过程时输入正确的参数名称和正确的值
时,这没有显示任何内容 total PName
答案 0 :(得分:4)
参数长度问题
@region varchar,
@RegNo varchar
您需要为存储过程中的VARCHAR
参数指定适当的长度
@region varchar(10),
@RegNo varchar(10)