BUG: Assigning datetime to smalldatetime May Change Value (118877)
The information in this article applies to:
- Microsoft SQL Server 4.2x
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.
Modification Type: | Minor | Last Reviewed: | 3/14/2005 |
---|
Keywords: | kbProgramming KB118877 |
---|
|