SqlParameter.Scale Özellik
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
Çözülecek Value ondalık basamak sayısını alır veya ayarlar.
public:
property System::Byte Scale { System::Byte get(); void set(System::Byte value); };
public byte Scale { get; set; }
[System.Data.DataSysDescription("DbDataParameter_Scale")]
public byte Scale { get; set; }
member this.Scale : byte with get, set
[<System.Data.DataSysDescription("DbDataParameter_Scale")>]
member this.Scale : byte with get, set
Public Property Scale As Byte
Özellik Değeri
Çözümlenen Value ondalık basamak sayısı. Varsayılan değer 0’dır.
Uygulamalar
- Öznitelikler
Örnekler
Aşağıdaki örnek, bir SqlParameter oluşturur ve özelliklerinden bazılarını ayarlar.
static void CreateSqlParameterPrecisionScale()
{
SqlParameter parameter = new SqlParameter("Price", SqlDbType.Decimal);
parameter.Value = 3.1416;
parameter.Precision = 8;
parameter.Scale = 4;
}
Private Sub CreateSqlParameterPrecisionScale()
Dim parameter As New SqlParameter("Price", SqlDbType.Decimal)
parameter.Value = 3.1416
parameter.Precision = 8
parameter.Scale = 4
End Sub
Açıklamalar
Scale özelliği , , SqlDbTypeDecimalveya DateTime2olan parametreler DateTimeOffsetTimetarafından kullanılır.
Warning
Özellik açıkça belirtilmezse Scale ve sunucudaki veriler 0 ölçeğine (varsayılan) sığmazsa veriler kesilebilir.
Tür için DateTime2 ölçek 0 (varsayılan) datetime2(7) olarak geçirilir. Şu anda bir parametreyi datetime2(0) olarak göndermenin bir yolu yoktur. 1-7 arası çalışmayı beklendiği gibi ölçeklendirir.
Bu sorun ve DateTimeOffset için Time de geçerlidir.
Parametre değerinden Precision çıkarılabildiği için giriş parametreleri için ve Scale özellikleri için değerler belirtmeniz gerekmez.
Precision ve Scale çıkış parametreleri için ve belirli bir duyarlık ve ölçekle null değer belirtme gibi bir değer belirtmeden bir parametre için tam meta veriler belirtmeniz gereken senaryolar için gereklidir.
Note
Veritabanına geçirilen verileri zorlamak için bu özelliğin kullanılması desteklenmez. Verileri veritabanına geçirmeden önce yuvarlama, kesme veya başka bir şekilde zorlamak için, parametrenin MathSystem özelliğine bir değer atamadan önce ad alanının parçası Value olan sınıfını kullanın.
Note
.NET Framework sürüm 1.0'a dahil edilen .NET Framework veri sağlayıcıları parametre değerlerini veya Precision değerlerini Scale doğrulamazDecimal. Bu, kesilmiş verilerin veri kaynağına eklenmesine neden olabilir. .NET Framework sürüm 1.0 kullanıyorsanız parametre değerini ayarlamadan önce ve PrecisionSqlParameter değerlerini doğrulayınDecimal. Scale parametre ölçeğini Decimal aşan değerler yine kesilir.