Click here to Skip to main content
6,596,602 members and growing! (22,853 online)
Email Password   helpLost your password?
Database » Database » Databases     Intermediate

Convert DateTime To .NET Ticks Using T-SQL

By Eron Wright

Convert a datetime value to .NET-compatible Ticks using a T-SQL User-Defined Function. Useful for interoperation between .NET and unmanaged environments such as ASP and VB6
SQL, Windows, .NET 1.0, .NET 1.1SQL 2000, DBA, Dev
Posted:28 Dec 2003
Views:84,349
Bookmarked:19 times
Announcements
Loading...
 
Search    
Advanced Search
Add to IE Search
printPrint   add Share
      Discuss Discuss   Broken Article?Report  
13 votes for this article.
Popularity: 3.62 Rating: 3.25 out of 5
4 votes, 30.8%
1
1 vote, 7.7%
2
1 vote, 7.7%
3
2 votes, 15.4%
4
5 votes, 38.5%
5

Introduction

The .NET Framework provides a simple long representation for a datetime, known as Ticks. A given ticks value is the number of 100-nanosecond intervals that have elapsed since 12:00 A.M., January 1, 0001. Unmanaged components might have to interact with .NET components using ticks. This article presents a simple T-SQL User-Defined Function for converting a datetime value to ticks.

Background

Unmanaged languages often expose datetime values as OLE Automation dates (OADate). An OLE Automation date is implemented as a floating-point number whose value is the number of days from midnight, 30 December 1899. In 32-bit systems, a Ticks representation is higher-fidelity than an OADate representation. Consequently, a given datetime value should be converted to Ticks from within SQL Server, not unmanaged application code.

Using the code

Create the User-Defined Functions supplied with this article on a SQL Server database. Use the dbo.DateTimeToTicks function in queries, views, and stored procedures as needed.

DECLARE @TestDate datetime
SET @TestDate = GetDate()
select @TestDate, dbo.DateTimeToTicks(@TestDate)

Points Of Interest

For information on the .NET Framework DateTime structure, see here. Documentation on Ticks and OADates is here and here.

History

  • Release 1.0

License

This article has no explicit license attached to it but may contain usage terms in the article text or the download files themselves. If in doubt please contact the author via the discussion board below.

A list of licenses authors might use can be found here

About the Author

Eron Wright


Member
I am a Senior Software Architect for Point2 Technologies, a software development company in Saskatoon, Saskatchewan, Canada.

I love .NET, SQLXML, XSLT, Web Services, Java and much more.
Occupation: Web Developer
Location: Canada Canada

Other popular Database articles:

Article Top
You must Sign In to use this message board.
FAQ FAQ 
 
Noise Tolerance  Layout  Per page   
 Msgs 1 to 10 of 10 (Total in Forum: 10) (Refresh)FirstPrevNext
Generali am taught that the db server should be used as data storage/retrieval and not data processor Pinmembercairoso0:02 11 Jun '09  
GeneralPerfect PinmemberGreenKnight9:25 21 May '09  
GeneralMy vote of 2 PinmemberZinkyu12:24 16 Mar '09  
GeneralRe: My vote of 2 PinmemberGreenKnight9:27 21 May '09  
GeneralTicks to DateTime PinmemberRicardo Casquete19:33 19 Nov '08  
GeneralOther idea for Ticks Pinmembercool_greg0:14 21 Apr '08  
GeneralRe: Other idea for Ticks Pinmembercrazsmith7:47 8 Jul '09  
GeneralTo what end? Pinmembercode slave5:38 18 Dec '05  
Generalconvert ticks to DateTime Pinmembernmrs24:04 12 Jan '04  
GeneralRe: convert ticks to DateTime PinmemberGuido_d3:43 14 Jul '06  

General General    News News    Question Question    Answer Answer    Joke Joke    Rant Rant    Admin Admin   

PermaLink | Privacy | Terms of Use
Last Updated: 28 Dec 2003
Editor: Nishant Sivakumar
Copyright 2003 by Eron Wright
Everything else Copyright © CodeProject, 1999-2009
Web17 | Advertise on the Code Project