次の方法で共有


OleDbParameter.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 です。

実装

属性

次の例では、 OleDbParameter を作成し、そのプロパティの一部を設定します。

Public Sub CreateOleDbParameter()
    Dim parameter As New OleDbParameter("Price", OleDbType.Decimal)
    parameter.Value = 3.1416
    parameter.Precision = 8
    parameter.Scale = 4
End Sub 'CreateOleDbParameter
public void CreateOleDbParameter()
 {
    OleDbParameter parameter = new OleDbParameter("Price", OleDbType.Decimal);
    parameter.Value = 3.1416;
    parameter.Precision = 8;
    parameter.Scale = 4;
 }

注釈

Scale プロパティは、OleDbCommandPrepare メソッドを呼び出す前に、10 進数および数値入力パラメーターにのみ使用され、数値出力パラメーターを指定します。

このプロパティをデータベース内の値以外の値に設定することは、データ プロバイダーの実装によって異なり、エラー コード、切り捨て、または丸めデータを返す場合があります。

SQL Server Native Client 10 (またはそれ以降) を使用して、型が DecimalNumericVarNumericDBDate、または DBTimeStampのパラメーターをバインドする場合は、適切なスケール値を手動で指定する必要があります。

このプロパティを使用して、データベースに渡されるデータを強制することはできません。 データをデータベースに渡す前に丸めたり、切り捨てたり、強制したりするには、パラメーターの Value プロパティに値を割り当てる前に、System名前空間の一部である Math クラスを使用します。

.NET Framework バージョン 1.0 に含まれる .NET Framework データ プロバイダーは、パラメーター値のPrecisionまたはScaleDecimal検証しません。 これにより、切り捨てられたデータがデータ ソースに挿入される可能性があります。 .NET Framework バージョン 1.0 を使用している場合は、パラメーター値を設定する前に、Decimal値のPrecisionOleDbParameterを検証します。 Scale Decimalパラメータースケールを超える値は切り捨てられます。

適用対象

こちらもご覧ください