ariadpg
سه شنبه 08 اسفند 1391, 11:57 صبح
سلام. StoreProcedure زیر را در نظر بگیرید
CREATE PROCEDURE stpSearchRequest
@FRequestDate int=Null,
@TRequestDate int=Null,
@Name nvarchar(50)=Null,
@Family nvarchar(50)=Null,
@IdentNo bigint=Null,
@RequestSubject int=Null,
@RequestType int=Null,
@RequestStatus int =Null,
@RName nvarchar(50)=Null,
@RFamily nvarchar(50)=Null,
@CityName nvarchar(50)=Null,
@RCityName nvarchar(50)=Null,
@ReportType int=Null
As
If @ReportType = 0
Select * From vwRequest
where (
(@FRequestDate is null or VoteDate>=@FRequestDate) and
(@TRequestDate is null or VoteDate<=@TRequestDate ) and
(@Name is null or [Name] like '%'+@Name+'%' ) and
(@Family is null or Family like '%'+@Family+'%' ) and
(@IdentNo is null or IdentNo = @IdentNo ) and
(@RequestSubject is null or RequestSubject= @RequestSubject ) and
(@RequestType is null or RequestType = @RequestType ) and
(@RequestStatus is null or RequestStatus = @RequestStatus) and
(@RName is null or RName like '%'+@RName+'%' ) and
(@RFamily is null or RFamily like '%'+@RFamily+'%' ) and
(@CityName is null or CityName like '%'+@CityName+'%' ) and
(@RCityName is null or RCityName like '%'+@RCityName+'%' ) and
(VoteNo is Not Null )
)
order by MakhtoomeNo,Family
می خواهم در جلوی Order By فیلدی که بایستی مرتب سازی بر اساس آن انجام گیرد را بصورت پارامتر به آن پاس کنم ، این پارامتر را باید از چه نوع داده ای تعریف کنم ؟ از نوع NvarCHar تعریف کردم ولی قبول نکرد پیغام خطا می داد.
CREATE PROCEDURE stpSearchRequest
@FRequestDate int=Null,
@TRequestDate int=Null,
@Name nvarchar(50)=Null,
@Family nvarchar(50)=Null,
@IdentNo bigint=Null,
@RequestSubject int=Null,
@RequestType int=Null,
@RequestStatus int =Null,
@RName nvarchar(50)=Null,
@RFamily nvarchar(50)=Null,
@CityName nvarchar(50)=Null,
@RCityName nvarchar(50)=Null,
@ReportType int=Null
As
If @ReportType = 0
Select * From vwRequest
where (
(@FRequestDate is null or VoteDate>=@FRequestDate) and
(@TRequestDate is null or VoteDate<=@TRequestDate ) and
(@Name is null or [Name] like '%'+@Name+'%' ) and
(@Family is null or Family like '%'+@Family+'%' ) and
(@IdentNo is null or IdentNo = @IdentNo ) and
(@RequestSubject is null or RequestSubject= @RequestSubject ) and
(@RequestType is null or RequestType = @RequestType ) and
(@RequestStatus is null or RequestStatus = @RequestStatus) and
(@RName is null or RName like '%'+@RName+'%' ) and
(@RFamily is null or RFamily like '%'+@RFamily+'%' ) and
(@CityName is null or CityName like '%'+@CityName+'%' ) and
(@RCityName is null or RCityName like '%'+@RCityName+'%' ) and
(VoteNo is Not Null )
)
order by MakhtoomeNo,Family
می خواهم در جلوی Order By فیلدی که بایستی مرتب سازی بر اساس آن انجام گیرد را بصورت پارامتر به آن پاس کنم ، این پارامتر را باید از چه نوع داده ای تعریف کنم ؟ از نوع NvarCHar تعریف کردم ولی قبول نکرد پیغام خطا می داد.