2010-11-24 5 views
0

HI:
je dois convertir un bigint déposé dans la base de DataTime équivalent
je ne pouvais pas faire de SQLServer ni visual studio
j'ai essayé les tiques, mais ce ne est pas utile tout idée? merci beaucoupsql server et l'heure longue date

+0

S'il vous plaît poster des exemples des valeurs BIGINT dans votre base de données –

+0

Un format de date utile pour bigint pourrait être " aaaaammjhhmmssmmm ". Ce serait triable et humainement lisible. –

+0

les valeurs dans la base de données ressemble: 1276162464406 et 1277290809250 mais je ne connais pas les valeurs équivalentes dans datetime je viens d'arriver ici, et ces thèses ne ressemblent pas à des tiques – Abd

Répondre

0

Pourquoi ne pas simplement dans SQL Server: obtenir des minutes et les ajouter à (dateTime.AddMinutes) à 1900-01-01?

Convert .NET Ticks to SQL Server DateTime

(nous savons que chez le comte 1900-01-01 tiques était 599266080000000000)

 long tNow = 634024345696365272; 
     long t1900 = 599266080000000000; 

     double minutes = (tNow - t1900) * Math.Pow((double)10,-7)/60; 
     var dataTime = DateTime.Parse("1900-01-01").AddMinutes(Math.Round(minutes));