February 4, 2004 at 12:35 pm
Has anyone ever received the following error message before? It occurs sporadicaly in my function but the funny thing is, I don't even have a datetime var in my function.
Server: Msg 542, Level 16, State 1, Procedure udf_show_this, Line 8
An invalid datetime value was encountered. Value exceeds the year 9999.
Thanks in advance,
Billy
February 4, 2004 at 1:53 pm
Is your function doing any conversion of data to DATETIME?
-SQLBill
February 4, 2004 at 3:55 pm
No datetime conversions..
here is the code...
CREATE FUNCTION udf_show_this (@tblOrder_ID INT) RETURNS VARCHAR(8000) AS
BEGIN
DECLARE @strMsg VARCHAR(8000)
DECLARE @i TINYINT
SET @i = 0
SELECT @strMsg = 'x' + CAST(@tblOrder_ID AS VARCHAR(8)) + 'x', @tblOrder_ID = tblOrder_fk_ID FROM tblOrder WHERE tblOrder_ID = @tblOrder_ID
WHILE @tblOrder_ID <> 0
BEGIN
SET @i = @i + 1
SELECT @strMsg = 'x' + CAST(tblOrder_ID AS VARCHAR(8)) + @strMsg, @tblOrder_ID = tblOrder_fk_ID FROM tblOrder WITH (NOLOCK) WHERE tblOrder_ID = @tblOrder_ID
IF @i > 10
BREAK
END
RETURN (@strMsg)
END
thanks in advance,
Billy
February 4, 2004 at 4:18 pm
Could it be bad data?
February 4, 2004 at 5:18 pm
The data is fine. There is only one datetime field in the table and that is the created date field. I have no idea what else is there except unproven conspiracy theories like maybe the query optimizer and the table are working together secretly to make me lose my mind ![]()
The only pattern I noticed was that it only occurs on first execution of the function right after the function is dropped and recreated.
That is, if I drop/recreate the function and then execute it, then there is a 5% chance it will throw the invalid datetime value error.
If I were to execute the function again after the first time, there is a 0% chance it will throw the invalid datetime value error.
Billy
February 4, 2004 at 5:50 pm
Did you run dbcc checktable to the table? You may drop the function, clear out buffer by DBCC DROPCLEANBUFFERS and DBCC FREEPROCCACHE and recreate the function?
February 4, 2004 at 6:03 pm
Actually I haven't tried that. I will give it a shot.
Many thanks
Billy
Viewing 7 posts - 1 through 7 (of 7 total)
You must be logged in to reply to this topic. Login to reply