2010-05-23 8 views
6

Czy ktoś wie, jak konwertować KOLUMNY DATETIME na TICKS w programie SQL Server?Konwertuj datę na znaczniki w programie SQL Server

+0

Dlaczego nie zrobić tego w kodzie .NET (gdzie jest to łatwe)? – Richard

+0

Ponieważ mam pewne rekordy w bazie danych i muszę je przekonwertować za pomocą pojedynczego zapytania z MSSQL – FinalDestiny

+0

Czy możesz podać więcej szczegółów na temat powodów konwersji w programie SQL Server? – Thomas

Odpowiedz

8

Jeśli próbujesz przekonwertować wartość t-sql do znaczników, które można porównać z "taką samą" wartością utworzoną w .NET, to nie będzie działać. Typ danych DateTime w SQL Server ma dokładność około 0,003 sekundy (w rzeczywistości wartości są zaokrąglane do .000, .003 lub .007) lub 10 -3, podczas gdy typ danych DateTime w .NET ma dokładność 100 nanosekundy (10 -7).

+0

OK dziękuję bardzo – FinalDestiny

+2

datetime2 w SQL Server 2008 naprawia to nieco – gbn

+0

@ gbn - Niezupełnie. Jeśli zapisałeś wartości z .NET do DateTime2 (7), to z powodu dodatkowej precyzji możesz uzyskać dopasowanie 1: 1. Ale nie jestem pewien, w jaki sposób można obliczyć równoważną wartość odliczeń off DateTime2 (7) ze względu na ograniczenia DateDiff. – Thomas

Powiązane problemy