我有以下程序界面:
create procedure [dbo].[GetsItemDetails]
(
@SiteURL varchar
)
AS
select
*
from
s_ItemDetails
where
SiteURL = @SiteURL
当我这样称呼它时:
DECLARE @return_value int
EXEC @return_value = [dbo].[GetsItemDetails] @SiteURL =
N'fgh'
SELECT 'Return Value' = @return_value
当有一个记录与siteURL“fgh”
时,我什么也得不到答案 0 :(得分:4)
您忘了指定参数的大小。
create procedure [dbo].[GetsItemDetails]
(
@SiteURL varchar
)
AS
没有大小,它是1个字符。
指定与SiteURL
的列大小相同的尺寸。
这样的事情:
create procedure [dbo].[GetsItemDetails]
(
@SiteURL varchar(255)
)
AS
答案 1 :(得分:1)
试试这个:
CREATE procedure [dbo].[GetsItemDetails]
(
@SiteURL varchar(1000)
)
AS
DECLARE @str varchar(1000)
SET @str='select * from s_ItemDetails where SiteURL ='+ ''''+@SiteURL+''''
select @str