SET DATEFORMAT
05/07/2017 şeklinde yazılan bir tarih sizce 5 Temmuz tarihini mi yoksa 7 Mayıs tarihini mi belirtir? Ya da 01-02-03 tarihi hangi yılı, hangi ayı, hangi günü belirtir? Uygulamalarımızda tarih formatını SQL Server üzerinde değiştirmemiz gereken durumlar olabilir. Bu değişikliği yapmak için ilgili session’da SET DATEFORMAT ifadesini çalıştırmamız gerekir. Böylece yıl, ay, gün karışıklığı olmadan istediğimiz tarihi kendimize uygun olan formatta yazabiliriz.
SET DATEFORMAT yazdıktan sonra dmy, dym, mdy, myd, ydm veya ymd ifadelerinden birini kullanmamız gerekir. d harfi günü, m harfi ayı, y harfi yılı temsil eder.
SET DATEFORMAT ymd DECLARE @date DATETIME='01-02-03' PRINT @date SET DATEFORMAT ydm SET @date ='01-02-03' PRINT @date SET DATEFORMAT dmy SET @date ='01-02-03' PRINT @date
Yazımı aynı olan bir tarihi ilk formatta 3 Şubat 2001, ikinci formatta 2 Mart 2001, üçüncü formatta 1 Şubat 2003 olarak ekrana yazdırdık. 01-02-03 yazdığımız zaman, yıl olarak 2000’li yılları bize verdiğini görüyoruz. 50 ve sonraki yıl değerleri için 1900’lü yılların geldiğini göreceğiz.
Siz de bu şekilde tarihlerinizin yazımını ayarlayabilirsiniz.