如何传递DateValue [英] How to pass DateValue

查看:70
本文介绍了如何传递DateValue的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

嗨朋友们,我创建了以下商店程序



ALTER程序usr_sp_Search_Room_by_City_Date ----'','8','','DEC 13 2014'

@RoomName varchar(100),

@CityId int = 0,

@LandMark varchar(100),

@BookingDate varchar

as



begin

将@Query声明为varchar(max)



set @ Query ='选择tblusr.UserId,tblP.RoomId,tblP.LandMark,tblusrL.Role,tblusr.UserFname,tblusr.UserLname,tblusr.UserPhNo,
tblusr.Gender,tblP.RoomName,tblCountry.CntryId,tblCountry.CntryName,tblState.StateId,tblState.StateName,

tblCity.CityId,tblCity.CityName,tblP.RoomPrice,tblP .PTotalSeating,tblP.PAc_NonAc,tblP.RoomPhNo,tblP.RoomTypeId,

tblRoomType.RoomType,tblP.GoogleLink,tblP.ParkingSpace,tblP.Accomodation,tblP.HallArea,tblP.BookingAmount,
tblP.RoomLandLine,tblP.Zip,tblImg.ImageName

来自tblUser tblusr join tblUserLogIn tblusrL on tblusr.UserId = tblusrL.UserId

加入tblRoom tblP on tblP.RoomId = tblusr.UserId join tblImage tblImg on tblImg.RoomId = tblusr.UserId

加入tblCountry on tblP。 RoomCountryId = tblCountry.CntryId在tblState.StateId = tblP.RoomStateId上加入tblState

加入tblCity on tblCity.CityId = tblP.RoomCityId加入tblRoomType on tblRoomType.RoomTypeId = tblP.RoomTypeId

其中''true''= tblImg.IsProfileImage和''true''= tblusrL.Isconfirmed'

if(@RoomName!='')

set @Query = @ Query +'和tblP.RoomName喜欢''%'+ @ RoomName +'%'''

if(@LandMark!='')

set @Query = @ Query +'和tblP.LandMark喜欢''%'+ @ LandMark +'%'''

if(@CityId!='')

set @Query = @ Query +'和tblCity.CityId ='+ cast(@CityId as varchar)

if(@BookingDate!='')

set @ Query = @ Query + '和tblP.RoomId不在(从TblBookings选择RoomId,其中Pdate喜欢''%'+ CAST (@BookingDate AS VARCHAR)+'%'''

exec(@Query)



结束



每当我试图运行这个商店程序时



命令:



usr_sp_Search_Room_by_City_Date'','8','','2014年12月13日'



投掷以下错误:



消息102,等级15,状态1,行10

'%D%'附近的语法不正确。



usr_sp_Search_palace_by_City_Date'','8','', '12 -13-2014'



投掷以下错误:



消息102,等级15,状态1,行10

'%1%'附近的语法不正确。



Pdate有数据类型。



请帮我摆脱这个问题。

Hi Friends, I have created below store procedure

ALTER procedure usr_sp_Search_Room_by_City_Date ----'','8','','DEC 13 2014'
@RoomName varchar(100),
@CityId int=0,
@LandMark varchar(100),
@BookingDate varchar
as

begin
Declare @Query as varchar(max)

set @Query='Select tblusr.UserId,tblP.RoomId,tblP.LandMark,tblusrL.Role,tblusr.UserFname,tblusr.UserLname,tblusr.UserPhNo,
tblusr.Gender,tblP.RoomName,tblCountry.CntryId,tblCountry.CntryName,tblState.StateId,tblState.StateName,
tblCity.CityId,tblCity.CityName,tblP.RoomPrice,tblP.PTotalSeating,tblP.PAc_NonAc,tblP.RoomPhNo,tblP.RoomTypeId,
tblRoomType.RoomType,tblP.GoogleLink,tblP.ParkingSpace,tblP.Accomodation,tblP.HallArea,tblP.BookingAmount,
tblP.RoomLandLine,tblP.Zip,tblImg.ImageName
from tblUser tblusr join tblUserLogIn tblusrL on tblusr.UserId=tblusrL.UserId
join tblRoom tblP on tblP.RoomId=tblusr.UserId join tblImage tblImg on tblImg.RoomId=tblusr.UserId
join tblCountry on tblP.RoomCountryId=tblCountry.CntryId join tblState on tblState.StateId=tblP.RoomStateId
join tblCity on tblCity.CityId=tblP.RoomCityId join tblRoomType on tblRoomType.RoomTypeId=tblP.RoomTypeId
where ''true''=tblImg.IsProfileImage and ''true''=tblusrL.Isconfirmed'
if(@RoomName!=' ')
set @Query=@Query + ' and tblP.RoomName like ''%'+@RoomName+'%'''
if(@LandMark!=' ')
set @Query=@Query + ' and tblP.LandMark like ''%'+@LandMark+'%'''
if(@CityId!=' ')
set @Query=@Query + ' and tblCity.CityId='+cast(@CityId as varchar)
if(@BookingDate!=' ')
set @Query=@Query+'and tblP.RoomId not in (Select RoomId from tblBookings where Pdate like ''%'+CAST(@BookingDate AS VARCHAR)+'%'''
exec(@Query)

end

Whenever I have tried to run this store procedure

Command :

usr_sp_Search_Room_by_City_Date '','8','','DEC 13 2014'

It is throwing below error :

Msg 102, Level 15, State 1, Line 10
Incorrect syntax near '%D%'.

usr_sp_Search_palace_by_City_Date '','8','','12-13-2014'

It is throwing below error :

Msg 102, Level 15, State 1, Line 10
Incorrect syntax near '%1%'.

Pdate have datatype.

Please help me to get rid of this issue.

推荐答案

我执行了



EXECUTE usr_sp_Search_palace_by_City_Date @PalaceName ='',@ CityId = 8,@ LandMark ='',@ BookingDate ='2014-12-13'



抛出以下错误:



消息102,级别15,状态1,行10

'%2%'附近的语法不正确。
I have executed with

EXECUTE usr_sp_Search_palace_by_City_Date @PalaceName ='',@CityId =8, @LandMark ='', @BookingDate ='2014-12-13'

It is throwing below error:

Msg 102, Level 15, State 1, Line 10
Incorrect syntax near '%2%'.


Pdate具有varchar数据类型

和第10行是ALTER程序usr_sp_Search_Room_by_City_Date
Pdate have varchar datatype"
and Line 10 is "ALTER procedure usr_sp_Search_Room_by_City_Date


我试过了

仍然给出同样的问题
I have tried it
Still giving same issue


这篇关于如何传递DateValue的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆