关于SQL的问题,请各位帮忙!

来源:百度知道 编辑:UC知道 时间:2024/04/28 17:12:25
我有这么一段代码,就是想返回个数,我要是不加条件的搜索返回的@n没问题,一旦加了这个条件不管有没有查到结果都是返回0。。
CREATE proc searchallcount
@name1 nvarchar(50),
@n int=0 output
as
select @n=count(*) from product where product_name like '%@name1%'
return @n
GO
谢谢各位,不过你们的我试了都没通过,我终于找到个例子。
我这段代码错在 传入的变量@name1在查询条件中应该是被认为字符串了,而没认为是变量,所以查询条件应该为:
where product_name like '%'+@name1+'%'这样改后正常显示。
再次谢谢三位帮忙!

CREATE proc searchallcount
@name1 nvarchar(50),
@n int
as
select @n=count(*) from product where product_name like '%@name1%'
return @n
GO
这样就可以了,你给他值给的不对,还有就是接受的不对

CREATE proc searchallcount
@name1 nvarchar(50),
@n int=0 out
as
select @n=count(*) from product where product_name like '%@name1%'
select @n
GO

@n int=0
有这样写的吗??我有段时间没碰这个东西了

你是要一个创建存储过程(你是带了参数的)

但是 存储过程的格式是:

create proc 存储过程名 参数名 参数类型
as
begin
select类型语句
end