다음을 통해 공유


SqlParameter.Precision 속성

정의

속성을 나타내는 Value 데 사용되는 최대 자릿수를 가져오거나 설정합니다.

public:
 property System::Byte Precision { System::Byte get(); void set(System::Byte value); };
public byte Precision { get; set; }
[System.Data.DataSysDescription("DbDataParameter_Precision")]
public byte Precision { get; set; }
member this.Precision : byte with get, set
[<System.Data.DataSysDescription("DbDataParameter_Precision")>]
member this.Precision : byte with get, set
Public Property Precision As Byte

속성 값

속성을 나타내는 데 사용되는 최대 자릿수입니다 Value . 기본값은 0입니다. 이는 데이터 공급자가 에 대한 전체 자릿수를 설정했음을 Value나타냅니다.

구현

특성

예제

다음 예제에서는 해당 SqlParameter 속성 중 일부를 만들고 설정합니다.

private static void AddSqlParameter(SqlCommand command)
{
    SqlParameter parameter = new SqlParameter("@Price", SqlDbType.Decimal);
    parameter.Value = 3.1416;
    parameter.Precision = 8;
    parameter.Scale = 4;

    command.Parameters.Add(parameter);
}
Private Sub AddSqlParameter(ByVal command As SqlCommand)

    Dim parameter As New SqlParameter("@Price", SqlDbType.Decimal)
    With parameter
        .Value = 3.1416
        .Precision = 8
        .Scale = 4
    End With

    command.Parameters.Add(parameter)
End Sub

설명

Precision 속성은 다음을 Decimal포함하는 SqlDbType 매개 변수에 사용됩니다.

매개 변수 값 Precision 에서 유추할 수 있으므로 입력 매개 변수의 값 및 Scale 속성 값을 지정할 필요가 없습니다. Precision Scale 출력 매개 변수 및 값을 표시하지 않고 매개 변수에 대한 전체 메타데이터를 지정해야 하는 시나리오(예: 특정 정밀도 및 배율로 null 값 지정)에 필요합니다.

메모

데이터베이스에 전달된 데이터를 강제 변환하는 데 이 속성을 사용하는 것은 지원되지 않습니다. 데이터를 데이터베이스에 전달하기 전에 반올림, 자르기 또는 강제 변환하려면 매개 변수의 Value 속성에 값을 할당하기 전에 네임스페이스의 일부 System 인 클래스를 사용합니다Math.

메모

.NET Framework 버전 1.0에 포함된 Microsoft .NET Framework 데이터 공급자는 매개 변수 값을 확인하지 PrecisionScaleDecimal 않습니다. 이로 인해 잘린 데이터가 데이터 원본에 삽입될 수 있습니다. .NET Framework 버전 1.0을 사용하는 경우 매개 변수 값을 설정하기 전에 값의 Decimal 유효성을 검사 Precision 합니다Scale. .NET Framework 버전 1.1 이상을 사용하는 경우 매개 변수 값이 잘못된 Precision값으로 설정된 경우 Decimal 예외가 throw됩니다. Scale 매개 변수 배율을 초과하는 Decimal 값은 여전히 잘립니다.

적용 대상

추가 정보