SqlParameter.Scale Właściwość
Definicja
Ważne
Niektóre informacje odnoszą się do produktu w wersji wstępnej, który może zostać znacząco zmodyfikowany przed wydaniem. Firma Microsoft nie udziela żadnych gwarancji, jawnych lub domniemanych, w odniesieniu do informacji podanych w tym miejscu.
Pobiera lub ustawia liczbę miejsc dziesiętnych, do których Value jest rozpoznawana.
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
Wartość właściwości
Liczba miejsc dziesiętnych, do których Value jest rozpoznawana. Wartość domyślna to 0.
Implementuje
- Atrybuty
Przykłady
Poniższy przykład tworzy obiekt SqlParameter i ustawia niektóre z jego właściwości.
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
Uwagi
Właściwość Scale jest używana przez parametry o SqlDbType wartości Decimal
, , DateTime2
DateTimeOffset
lub Time
.
Ostrzeżenie
Dane mogą zostać obcięte, jeśli Scale właściwość nie zostanie jawnie określona, a dane na serwerze nie mieszczą się w skali 0 (wartość domyślna).
DateTime2
Dla typu skala 0 (wartość domyślna) zostanie przekazana jako data/godzina2(7). Obecnie nie ma możliwości wysyłania parametru jako datetime2(0). Skaluje 1–7 pracy zgodnie z oczekiwaniami.
Ten problem dotyczy DateTimeOffset
również i Time
.
Nie trzeba określać wartości parametrów Precision wejściowych i , Scale ponieważ można je wywnioskować z wartości parametru .
Precision
i Scale
są wymagane dla parametrów wyjściowych i dla scenariuszy, w których należy określić pełne metadane dla parametru bez wskazywania wartości, takich jak określanie wartości null z określoną dokładnością i skalowaniem.
Uwaga
Użycie tej właściwości do przetwarzania danych przekazywanych do bazy danych nie jest obsługiwane. Aby zaokrąglić, obcinać lub w inny sposób przekształcać dane przed przekazaniem ich do bazy danych, użyj Math klasy, która jest częścią System
przestrzeni nazw przed przypisaniem wartości do właściwości parametru Value
.
Uwaga
.NET Framework dostawców danych dołączonych do .NET Framework w wersji 1.0 nie weryfikują Precision wartości parametrów Decimal ani Scale . Może to spowodować wstawienie obcięć danych w źródle danych. Jeśli używasz .NET Framework w wersji 1.0, przed ustawieniem wartości parametru zweryfikuj PrecisionDecimal wartości i SqlParameter . Scale wartości przekraczające skalę parametrów Decimal są nadal obcinane.