By using this site, you agree to our updated Privacy Policy and our Terms of Use. Manage your Cookies Settings.
443,534 Members | 974 Online
Bytes IT Community
+ Ask a Question
Need help? Post your question and get tips & solutions from a community of 443,534 IT Pros & Developers. It's quick & easy.

Date from Double

P: n/a
Hello,
In SQL, if I do
Select cast (37797.8159722222 as datetime)as DateFromDecimal
i get 2003-06-27 19:34:59.997 as the return.

in VB.NET if I do:
Dim idate As Date
idate = Date.FromOADate(37797.8159722222)
I get 6/25/2003 7:35:00 PM as the return.
Any idea as to why I'm getting different day of the month?

Any idea how I can get vb.net to return the time in the same precision
as SQL? VB.net appears to be rounding the time up to 7:35:00 PM

Thanks!

Oct 27 '06 #1
Share this Question
Share on Google+
2 Replies


P: n/a
1. An SQL DateTime is not an Automation date (the difference is 2 days),
so to correct for this, add 2 to the double value in VB before
converting it.

2. An SQL DateTime has a precision in milliseconds, VB in seconds, so,
the rounding you mention is correct.


a VB datetime is stored completely differently than SQL DateTimes, so,
stored as a double
ru********@gmail.com wrote:
Hello,
In SQL, if I do
Select cast (37797.8159722222 as datetime)as DateFromDecimal
i get 2003-06-27 19:34:59.997 as the return.

in VB.NET if I do:
Dim idate As Date
idate = Date.FromOADate(37797.8159722222)
I get 6/25/2003 7:35:00 PM as the return.
Any idea as to why I'm getting different day of the month?

Any idea how I can get vb.net to return the time in the same precision
as SQL? VB.net appears to be rounding the time up to 7:35:00 PM

Thanks!
Oct 27 '06 #2

P: n/a
Theo,
Thank you very much for the reply.

Theo Verweij wrote:
1. An SQL DateTime is not an Automation date (the difference is 2 days),
so to correct for this, add 2 to the double value in VB before
converting it.

2. An SQL DateTime has a precision in milliseconds, VB in seconds, so,
the rounding you mention is correct.


a VB datetime is stored completely differently than SQL DateTimes, so,
stored as a double
ru********@gmail.com wrote:
Hello,
In SQL, if I do
Select cast (37797.8159722222 as datetime)as DateFromDecimal
i get 2003-06-27 19:34:59.997 as the return.

in VB.NET if I do:
Dim idate As Date
idate = Date.FromOADate(37797.8159722222)
I get 6/25/2003 7:35:00 PM as the return.
Any idea as to why I'm getting different day of the month?

Any idea how I can get vb.net to return the time in the same precision
as SQL? VB.net appears to be rounding the time up to 7:35:00 PM

Thanks!
Oct 27 '06 #3

This discussion thread is closed

Replies have been disabled for this discussion.