Исправить ошибку в моей процедуре Storred - PullRequest
0 голосов
/ 12 мая 2011

Я получаю ошибку рядом с AS, что является проблемой в IF ..?

Create Procedure dbo.sp_Normal_Search
(
@title as nvarchar(max),
@Description as nvarchar(max),
@Keywords as nvarchar(max),
@Chk_title as Bit,
@Chk_Description as Bit,
@Chk_Keywords as Bit,
@RD_AND as Bit,
@RD_OR as Bit



AS
if(@RD_AND = 1)
Begin
    if(@Chk_title = 1)
        Begin
        (Select title from server_des where title Like '%'+ @title+'%')
        End
END
GO
)

Я получаю ошибку рядом с AS, что является проблемой в IF ..?

Ответы [ 2 ]

3 голосов
/ 12 мая 2011

круглые скобки в неправильном месте:

Create Procedure dbo.sp_Normal_Search 
( 
   @title as nvarchar(max), 
   @Description as nvarchar(max), 
   @Keywords as nvarchar(max), 
   @Chk_title as Bit, 
   @Chk_Description as Bit, 
   @Chk_Keywords as Bit, 
   @RD_AND as Bit, 
   @RD_OR as Bit 
) 
AS

if @RD_AND = 1 
Begin 
    if @Chk_title = 1 
        Begin 
            Select title from server_des where title Like '%'+ @title+'%' 
        End 
END 
GO 

Что вы планируете вернуть, если @RD_AND! = 1

1 голос
/ 12 мая 2011

Вы должны удалить скобки ... после того, как ваш сохраненный процесс.имя ...

Измените его на что-то вроде:

Create Procedure dbo.sp_Normal_Search 
   @title as nvarchar(max), 
   @Description as nvarchar(max), 
   @Keywords as nvarchar(max), 
   @Chk_title as Bit, 
   @Chk_Description as Bit, 
   @Chk_Keywords as Bit, 
   @RD_AND as Bit, 
   @RD_OR as Bit 
AS

if @RD_AND = 1
Begin 
    if @Chk_title = 1
        Begin 
            Select title 
            from server_des 
            where title Like '%' + @title + '%'
        End 
END 
GO 
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...