Solved

Adding a value to a 'datetime' column caused overflow.

Posted on 2010-09-09
11
1,091 Views
Last Modified: 2012-06-22
i am getting the error "Adding a value to a 'datetime' column caused overflow."   when I try and run this statement.  DATEADD(dd, - 365, p.LASTMISSEDAPPT) < pl.PLDATE.  how can I change DATEADD(dd, - 365, p.LASTMISSEDAPPT) to avoid this.

Thanks
0
Comment
Question by:running32
  • 4
  • 4
  • 2
  • +1
11 Comments
 
LVL 142

Expert Comment

by:Guy Hengel [angelIII / a3]
ID: 33637608
what are values in the 2 fields? you might hit min value of date ...what about:
 p.LASTMISSEDAPPT < dateadd(dd, 365, pl.PLDATE)





resp:



p.LASTMISSEDAPPT < dateadd(year, 1, pl.PLDATE)

Open in new window

0
 
LVL 3

Expert Comment

by:aledev
ID: 33637624
Waht type is p.LASTMISSEDAPPT?

If p.LASTMISSEDAPPT is a float "representing" a date, then this value is likely
to be too high. If it exceeds 2936549 you will get an out or range error
(or similar error). If it represents a date, you should cast it to a
datetime.
0
 

Author Comment

by:running32
ID: 33637881
Example of a field is the value of the fields could be 9/7/2010.  It still does it when I cast the value as datetime 101.  thanks
0
 
LVL 3

Expert Comment

by:aledev
ID: 33638035
have you tried this?

DATEADD(year, -1, p.LASTMISSEDAPPT)
0
 

Author Comment

by:running32
ID: 33638261
yes, still gives me the same error.  Thanks
0
How to run any project with ease

Manage projects of all sizes how you want. Great for personal to-do lists, project milestones, team priorities and launch plans.
- Combine task lists, docs, spreadsheets, and chat in one
- View and edit from mobile/offline
- Cut down on emails

 
LVL 3

Expert Comment

by:aledev
ID: 33638371
There are any rows in your data table with this value in that field?

'1900-01-01 00:00:00'
0
 

Author Comment

by:running32
ID: 33638549
NO the default date looks like 3/2/1753 or NULL
0
 
LVL 142

Accepted Solution

by:
Guy Hengel [angelIII / a3] earned 500 total points
ID: 33638579
which is the minimum year value (1753);
http://msdn.microsoft.com/en-us/library/ms187819.aspx

going 1 year back will indeed result in that error.
please try what I suggested first, changing to do the "dateadd(year,1 ,... )"
0
 
LVL 21

Expert Comment

by:mastoo
ID: 33638593
You might look for this to find the problem data:

Select * from yourtable
  Where IsDate(p.LASTMISSEDAPPT) = 0
0
 
LVL 3

Expert Comment

by:aledev
ID: 33638643
maybe the minimum SQL DateTime Value is 1/1/1753. Substruct one year to fields with the value you have mentioned ("3/2/1753") throw the exception
0
 

Author Comment

by:running32
ID: 33640011
angelIII, I tried your suggestion but it didn't work still gave the error

Server: Msg 517, Level 16, State 1, Line 1
Adding a value to a 'datetime' column caused overflow.

0

Featured Post

What Is Threat Intelligence?

Threat intelligence is often discussed, but rarely understood. Starting with a precise definition, along with clear business goals, is essential.

Join & Write a Comment

I wrote this interesting script that really help me find jobs or procedures when working in a huge environment. I could I have written it as a Procedure but then I would have to have it on each machine or have a link to a server-related search that …
This article explains how to reset the password of the sa account on a Microsoft SQL Server.  The steps in this article work in SQL 2005, 2008, 2008 R2, 2012, 2014 and 2016.
Via a live example, show how to shrink a transaction log file down to a reasonable size.
Viewers will learn how to use the SELECT statement in SQL to return specific rows and columns, with various degrees of sorting and limits in place.

758 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question

Need Help in Real-Time?

Connect with top rated Experts

22 Experts available now in Live!

Get 1:1 Help Now