Microsoft KB Archive/118877

= BUG: Assigning datetime to smalldatetime May Change Value =

Article ID: 118877

Article Last Modified on 3/14/2005

-

APPLIES TO


 * Microsoft SQL Server 4.21a Standard Edition

-



This article was previously published under Q118877



BUG# OS/2: 1875 (4.2) NT: 864 (4.2)



SYMPTOMS
The value of a datetime type local variable or parameter of a stored procedure could be changed after assigning it to a smalldatetime variable. It happens only on values between 11:59:30pm and 11:59:59pm. The value will be changed to 12:00:XXam on the next day.

For example,

declare @time datetime declare @s_time smalldatetime

select @time = "July 26,1994 11:59:59pm" select convert(char(40), @time, 9) select @s_time = @time select convert(char(40), @s_time, 9) select convert(char(40), @time, 9) go

would change the value for @time from "Jul 26 1994 11:59:31:000PM" to "Jul 27 1994 12:00:31:000AM."



WORKAROUND
If the value could fall into this range, assign it only to datetime instead of smalldatetime variables.



STATUS
Microsoft has confirmed this to be a problem in Microsoft SQL Server version 4.2. We are researching this problem and will post new information here in the Microsoft Knowledge Base as it becomes available.

Keywords: kbprogramming KB118877

-

[mailto:TECHNET@MICROSOFT.COM Send feedback to Microsoft]

© Microsoft Corporation. All rights reserved.