Not
Bu sayfaya erişim yetkilendirme gerektiriyor. Oturum açmayı veya dizinleri değiştirmeyi deneyebilirsiniz.
Bu sayfaya erişim yetkilendirme gerektiriyor. Dizinleri değiştirmeyi deneyebilirsiniz.
SQL Server veri türlerini biliyorsanız, .NET Framework'teki System.Data.SqlTypes ad alanında benzer semantik ve duyarlık bulabilirsiniz. Ancak bazı farklılıklar vardır ve bu makalede bu farkların en önemlileri yer alır.
Null değerler
Yerel ortak dil çalışma zamanı (CLR) veri türleri ile SQL Server veri türleri arasındaki birincil fark, ilkinin NULL değerlere izin vermediğinden ikincisinin tam NULL semantiği sağlamasıdır.
Karşılaştırmalar NULL değerlerden etkilenir.
x ve yiki değeri karşılaştırdığınızda, x veya yNULLise, bazı mantıksal karşılaştırmalar true veya false yerine UNKNOWN değer olarak değerlendirilir.
SqlBoolean veri türü
System.Data.SqlTypes ad alanı, bu üç değerli mantığı temsil eden bir SqlBoolean türü tanıtır. Herhangi bir SqlTypes arasındaki karşılaştırmalar bir SqlBoolean değer türü döndürür.
UNKNOWN değeri, SqlBoolean türünün null değeriyle temsil edilir. , IsFalseve IsNullIsTrueözellikleri, SqlBoolean türünün değerini denetlemek için sağlanır.
İşlemler, işlevler ve null değerler
Tüm aritmetik işleçler (+, -, *, /, %), bit düzeyinde işleçler (~, &ve |) ve çoğu işlev, SqlTypes işlenenlerinden veya bağımsız değişkenlerinden herhangi biri null ise NULL döndürür.
IsNull özelliği her zaman bir true veya false değeri döndürür.
Kesinlik
.NET Framework CLR'deki ondalık veri türleri, SQL Server'daki sayısal ve ondalık veri türlerinden farklı maksimum değerlere sahiptir. Buna ek olarak, .NET Framework CLR ondalık veri türlerinde en yüksek duyarlığı varsayın. Ancak SQL Server için CLR'de SqlDecimal, SQL Server'daki ondalık veri türüyle aynı maksimum duyarlık ve ölçek ile aynı semantiği sağlar.
Taşma algılama
.NET Framework CLR'de çok büyük iki sayının eklenmesi bir özel durum oluşturmayabilir. Bunun yerine, hiçbir denetim işleci kullanılmazsa, döndürülen sonuç negatif bir tamsayı olarak çevresinde kaydırabilir.
System.Data.SqlTypesiçinde, tüm taşma ve taşma hataları ve sıfıra bölme hataları için özel durumlar oluşturulur.
İlgili içerik
- .NET Framework SQL Server veri türlerini