共用方式為


SqlParameter.Scale 屬性

定義

取得或設定被解決的小 Value 數點數。

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

屬性值

解決到的小數 Value 點數。 預設值是 0。

實作

屬性

範例

以下範例會建立 並 SqlParameter 設定其部分性質。

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

備註

Scale 性質被具有 SqlDbTypeDecimalDateTime2DateTimeOffset、 或 Time的參數所使用。

警告

Scale 未明確指定屬性且伺服器資料不符合預設縮放範圍 0,則可截斷資料。 對於類型, DateTime2 縮放 0(預設)會被傳遞為 datetime2(7)。 目前無法將參數以 datetime2(0) 傳送。 1到7的音階功能如預期般運作。 這個問題同樣適用於 DateTimeOffsetTime

輸入參數不需要指定 和 Scale 屬性的值Precision,因為它們可以從參數值推斷出來。 Precision 以及 Scale 在需要指定完整元資料但不標示值的情況下,例如指定一個具有特定精度與刻度的空值,這些參數是輸出參數所需的。

備註

不支援使用此特性強制傳送至資料庫的資料。 若要在資料傳遞給資料庫前進行Value四周、截斷或其他強制處理,請先使用Math屬於System命名空間的類別,再為參數屬性指派值。

備註

.NET Framework 1.0 版本中包含的資料提供者不會驗證Precision參數值的 Decimal OR Scale 值。 這可能導致截斷資料入資料來源。 如果你使用的是 .NET Framework 1.0 版本,請在設定參數值前驗證 PrecisionSqlParameterDecimal 值。 Scale 超過參數尺度的 Decimal 值仍會被截斷。

適用於

另請參閱