DateTime ve DateTime2 Tarih Türü Arasındaki Farklar


DataTime ve DateTime2 tarih türü arasındaki farklar aşağıda hazırladığım tablodaki gibidir.

DateTime DateTime2[(n)]
Min Değer 1753-01-01 00:00:00 0001-01-01 00:00:00
Max Değer 9999-12-31 23:59:59.997 9999-12-31 23:59:59.9999999
Diskteki Boyutu 8 Byte 6 ile 8 byte arasında
7 basamağa kadar hassasiyet göstermektedir.Hassasiyet parametriktir.Eğer parametre değeri “0-7” verilmez ise varsayılan olarak “7” hassasiyet değeri kabul edilir. < 3 ise 6 byte, > 4 ise 8 byte bellekte yer kaplar. 3 ve 4 değeri ise bellekte 7 byte yer kaplar.
Kullanımı Declare @now datetime Declare @now datetime2(7)
Uygunluk ANSI/ISO Uyumu yok ANSI/ISO Uyumu var.
Şuanki tarihi veren fonksiyon GetDate()Örnek: SELECT GETDATE()
Sonuç: 2015-02-05 14:58:53.240
SYSDATETIME()Örnek: SELECT SYSDATETIME()
Sonuç: 2015-02-05 14:59:06.7643021
+/- Tarih İşlemleri / Gün ekleme örnekleri Aşağıdaki kullanım şekli çalışmaktadır.

 

 

Örnek:
DECLARE @nowDateTime DATETIME = GETDATE() SELECT @nowDateTime + 1
Sonuç: 2015-02-06 15:00:21.107

Hata Aşağıdaki kullanım şekli desteklenmemektedir. DateAdd fonksiyonu kullanılarak tarih işlemeri yapılmalıdır.

Örnek:
DECLARE @nowDateTime2 DATETIME2=
SYSDATETIME()
SELECT @nowDateTime2+1
Sonuç: Msg 206, Level 16, State 2, Line 2
Operand type clash: datetime2 is incompatible with int

Dikkat: DateTime2 veri türü eğer parametre değeri 3 olarak kullanılırsa DateTime ile aynı olur. Ayrıca DateTime2 (3) diskte 7 byte yer kaplar ve zaman aralığı daha fazladır. (0001-01-01 ile 9999-12-31) DateTime diskte 8 byte yer kapladığını unutmayalım. Şimdi konuyu pekiştirmek adına örneklendirelim;

[sql]

DECLARE @NowDateTime datetime=GETDATE(),
@NowDateTime2 datetime2(3)=SYSDATETIME()

SELECT DATALENGTH(@NowDateTime) ‘DateTime Disk Boyutu’,
DATALENGTH(@NowDateTime2) ‘DateTime2(3) Disk Boyutu’

[/sql]

datetime2_vs_datetime

windows 10 pro satın al

Mesut Güneş

Selçuk Üniversitesi Bilgisayar programcılığı bölümünden mezun olduktan sonra birçok firmada Yazılım, İş zekası ve Veritabanı Uzmanı olarak çalıştım. Şuan Türkiye’nin en büyük şirketlerinden biri olan Doğan Online’da Veritabanı Yöneticisi olarak çalışıyorum.

You may also like...

Bir cevap yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir

This site uses Akismet to reduce spam. Learn how your comment data is processed.