SqlParameter.Scale Özellik

Tanım

Çözümlenen ondalık basamak Value 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'dur.

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 , , DateTime2DateTimeOffsetveya Timeiçeren SqlDbTypeDecimalparametreler tarafından kullanılır.

Uyarı

Özellik açıkça belirtilmezse Scale ve sunucudaki veriler ölçek 0'a (varsayılan) sığmazsa veriler kesilebilir.
Tür için DateTime2 ölçek 0 (varsayılan) tarih saat2(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 Time için DateTimeOffset 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 veri belirtmeniz gereken senaryolar için gereklidir.

Not

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 MathValue özelliğine bir değer atamadan önce ad alanının parçası System olan sınıfını kullanın.

Not

.NET Framework sürüm 1.0'a dahil .NET Framework veri sağlayıcıları parametre değerlerinin veya Scale değerlerini Decimal doğrulamazPrecision. Bu, kesilmiş verilerin veri kaynağına eklenmesine neden olabilir. .NET Framework sürüm 1.0 kullanıyorsanız parametre değerini ayarlamadan önce değerlerin Decimal ve SqlParameter değerlerini doğrulayınPrecision. Scale parametre ölçeğini Decimal aşan değerler yine de kesilir.

Şunlara uygulanır

Ayrıca bkz.