GO
ALTER PROCEDURE [dbo].[GetSearchedProtocolsPaged] 

@StartDate Datetime,
@EndDate Datetime 
)
as DECLARE   @sql   nvarchar(4000) SET   @sql   =  
'select * from Protocol Where TaskDate>''' + @StartDate + ''' And TaskDate < ''' + @EndDate + ''')'EXEC   sp_executesql   @sql 请问如何比较TaskDate在存储过程输入的两个参数之间的全部记录?

解决方案 »

  1.   

    create PROCEDURE   [dbo].[GetSearchedProtocolsPaged]   
    (   
    @StartDate   Datetime, 
    @EndDate   Datetime   

    as    
    select   *   from   Protocol   Where   TaskDate>    @StartDate    And   TaskDate   <    @EndDate   直接这样就可以
      

  2.   

    set @sql='select * from Protocol where TaskDate>'''+convert(char(10),@StartDate,120)+''' and TaskDate<'''+convert(char(10),@EndDate,120)+''''exec sp_executesql @sql
      

  3.   

    @StartDate是起始日期
    @EndDate是结束日期
    这两个是存储过程提供的参数我想查询大于@StartDate并小于@EndDate的所有行
      

  4.   

    set ANSI_NULLS ON
    set QUOTED_IDENTIFIER ON
    GO
    ALTER PROCEDURE [dbo].[GetSearchedProtocolsPaged] 

    @Keywords varchar(100),
    @startRowIndex int, 
    @maximumRows int,
    @StartDate Datetime,
    @EndDate Datetime 
    )
    as DECLARE   @sql   nvarchar(4000) SET   @sql   =  
    'select * from
    (select Id,CompanyName,TaskDate,ContactInfor,ProtocolContent,Memo,RecorderID,FilePath,
    (row_number() over(order by Id)) as RankRow 
    from Protocol Where 
    ((CompanyName like ''' + @Keywords + ''') Or 
    (ContactInfor like ''' + @Keywords + ''') Or
    (ProtocolContent like ''' + @Keywords + ''') Or
    (Memo  like ''' + @Keywords + ''') Or
    (RecorderID  like ''' + @Keywords + ''')
    ) And (TaskDate Between ''' + convert(char(10),@StartDate,120)  
     + ''' And ''' + convert(char(10),@StartDate,120)   + ''') as result 
    Where result.RankRow >''' + convert(nchar(10),@startRowIndex) + ''' And result.RankRow <= ''' + 
    CONVERT(nvarchar(10),@maximumRows) + ''''
    EXEC   sp_executesql   @sql 全部的存储过程如下,提示as附近有语法错误
      

  5.   

    你不是都已经查出来了,直接执行一下不就行了吗? 
    EXEC GetSearchedProtocolsPaged '2007-01-11','2008-01-11'