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ü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 , , DateTime2
DateTimeOffset
veya Time
içeren SqlDbTypeDecimal
parametreler 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.