SqlParameter.Scale 속성
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
확인되는 소수 자릿수를 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 매개 변수에 사용 되는 SqlDbTypeDecimal, DateTime2또는 DateTimeOffsetTime.
경고
속성이 명시적으로 지정되지 않고 서버의 Scale 데이터가 배율 0(기본값)에 맞지 않으면 데이터가 잘릴 수 있습니다.
형식의 DateTime2 경우 크기 조정 0(기본값)은 datetime2(7)로 전달됩니다. 현재 매개 변수를 datetime2(0)로 보낼 수 있는 방법은 없습니다. 예상대로 1-7의 크기를 조정합니다.
이 문제도 적용됩니다 DateTimeOffsetTime .
매개 변수 값 Precision 에서 유추할 수 있으므로 입력 매개 변수의 값 및 Scale 속성 값을 지정할 필요가 없습니다.
Precision
Scale 출력 매개 변수 및 값을 표시하지 않고 매개 변수에 대한 전체 메타데이터를 지정해야 하는 시나리오(예: 특정 정밀도 및 배율로 null 값 지정)에 필요합니다.
메모
데이터베이스에 전달된 데이터를 강제 변환하는 데 이 속성을 사용하는 것은 지원되지 않습니다. 데이터를 데이터베이스에 전달하기 전에 반올림, 자르기 또는 강제 변환하려면 매개 변수의 Value 속성에 값을 할당하기 전에 네임스페이스의 일부 System 인 클래스를 사용합니다Math.
메모
.NET Framework 버전 1.0에 포함된 .NET Framework 데이터 공급자는 매개 변수 값을 확인하지 PrecisionScaleDecimal 않습니다. 이로 인해 잘린 데이터가 데이터 원본에 삽입될 수 있습니다. .NET Framework 버전 1.0을 사용하는 경우 매개 변수 값을 설정하기 전에 값의 Decimal 유효성을 검사 Precision 합니다SqlParameter. Scale 매개 변수 배율을 초과하는 Decimal 값은 여전히 잘립니다.