0

次のプロシージャ インターフェイスがあります。

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" のレコードがある場合、何も取得しません

4

2 に答える 2

4

パラメータのサイズを指定するのを忘れました。

create procedure [dbo].[GetsItemDetails]
(
    @SiteURL varchar
)
AS

サイズなしは1文字です。

の列サイズと同じサイズを指定しますSiteURL

このようなもの:

create procedure [dbo].[GetsItemDetails]
(
    @SiteURL varchar(255)
)
AS
于 2012-07-26T09:02:55.583 に答える
1

これを試して:

CREATE procedure [dbo].[GetsItemDetails]
(
    @SiteURL varchar(1000)
)
AS
DECLARE @str varchar(1000)
SET @str='select * from s_ItemDetails where  SiteURL ='+ ''''+@SiteURL+''''
select @str
于 2012-07-26T12:48:41.537 に答える