The Conversion of a Varchar Data Type to a Datetime Data Hata

Günümüzde veritabanı Microsoft SQL olan ve bu veritabanı ile çalışmakta olan C# ile yazılmış programlar bir hayli yaygındır. Ben de bu tarz programlar geliştirmiş olan bir yazılım geliştiricisiyim. Bu tarz uygulamalar geliştirme sırasında çeşitli tipik hataları alıyorum. Bu hatalardan birisi de The Conversion of a Varchar Data Type to a Datetime Data hata açıklamasıdır. Bu hatasının sebebi ve çözümünü sizinle paylaşayım.

The Conversion of a Varchar Data Type to a Datetime Data Hata

ADO metodu kullanarak Microsoft SQL veritabanı ile bağlantı sağlayan bir C# uygulamanız varsa muhtemelen bu hatayı alacaksınız. Muhtemelen diyorum çünkü her durumda bu hatayı almayacaksınız. Bu hatayı almanızın en büyük sebebi Microsoft SQL veritabanında bulunan datetime formatı ile C# projenizde değişkenlerinizi tuttuğunuz datetime formatının farklı olmasından dolayıdır.

Microsoft SQL veritabanında bir tablo oluşturduğunuzu varsayalım. Nasıl tablo oluşturacağınızı bilmiyorsanız SQL veritabanında tablo oluşturmak başlıklı yazımı okuyabilirsiniz. SQL veritabanında oluşturduğunuz tablonun bir sütununda datetime tipinde bir değişken olduğunu varsayalım.

ADO sorgusu ile bu tabloya datetime tipinde bir veri eklemeye kalktığınız zaman datetime veri tipinin dönüşümünden dolayı hata alabilirsiniz. Bu Visual Studio’da bir exception olarak karşınıza gelebilir. Bunu cihazın dil ayarlarını değiştirmekle çözmek yerine sorgunuzdaki değişkenin formatını değiştirebilirsiniz. Sorgunuzda anlık tarihi kullandığınızı var sayıyorum ve aşağıdaki kod işinizi görecektir diye düşünüyorum.

DateTime.Now.ToString("yyyy-MM-dd HH:mm:ss") 

Bir cevap yazın

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