SQL Server’da Tarih Doğrulatmak
Herkese merhaba,
Bu yazıda SQL Server’da tarih doğrulatmak ile ilgili bilgi vermeye çalışacağım.
SQL Server’da bazı durumlarda girilen tarihin geçerli bir tarih olduğunu öğrenmek isteyebilirsiniz. Şöyle ki; 31092022 tarihi (aralarında nokta olmadan belirtilmiş bir tarih ifadesi) normalde yok. Ekim ayı 30 gün süren bir aydır.
Aşağıdaki kodu kullanarak siz de bu işlemi rahatlıkla yapabilirsiniz.
DECLARE @input_str VARCHAR(25);
DECLARE @output_dt DATE;
SET @input_str = '31092022';
IF LEN(@input_str) >= 8
BEGIN
DECLARE @date_str VARCHAR(25);
SELECT @date_str
= SUBSTRING(@input_str, 1, 2) + '.' + SUBSTRING(@input_str, 3, 2) + '.' + SUBSTRING(@input_str, 5, 4);
BEGIN TRY
SELECT @output_dt = CONVERT(DATE, @date_str, 104);
END TRY
BEGIN CATCH
END CATCH;
END;
SELECT @output_dt;
Yukarıdaki kodu çalıştırınca aşağıdakine benzer bir sonuç göreceksiniz.
Görüldüğü üzere tarih olup olmadığı doğrulanmış oldu.
Herkese çalışma hayatında ve yaşamında başarılar kolaylıklar.