Hi, I want to write a StoredProcedure with one optional input parameter of Date and when it is missing I want current date to be used.
I have written the following StoredProcedure, but getdate function doesn`t work. If I replace it with a constant date, it works.
ALTER PROCEDURE
[dbo].[LinksFees_Record]@.Date
datetime=getdateAS
INSERT INTOLinkSearchFees(LinkID, Price, [Date])
SELECTIDASLinkID, SearchDayFeeASPrice, @.DateFROMLinksWHERE(SearchDayFee > 0)RETURNWhen I call the StoredProcedure the following exception occur:Conversion failed when converting datetime from character string.
How can I fix it?
Hi!
Try this:
ALTER PROCEDURE
[dbo].[LinksFees_Record]
@.Date
datetime = NULL
AS
IF @.DATE IS NULL SET @.Date= getdate()
... rest of your procedure goes here ...
Now if the users passes no parameter then @.Date will be replaced by getdate() result. Beware that if the user passes a NULL it will also be replaced by GetDate() results.
Have a good day,
David
No comments:
Post a Comment