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 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, które mają SqlDbType wartość Decimal, DateTime2, DateTimeOffsetlub Time.
Ostrzeżenie
Dane mogą być obcięte, jeśli Scale właściwość nie jest 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 i Scale , ponieważ można je wywnioskować z wartości parametru.
Precision i Scale są wymagane dla parametrów wyjściowych i scenariuszy, w których należy określić pełne metadane dla parametru bez wskazania wartości, takie jak określanie wartości null z określoną dokładnością i skalowaniem.
Uwaga / Notatka
Użycie tej właściwości do przekazywania danych 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 będącej częścią System przestrzeni nazw przed przypisaniem wartości do właściwości parametru Value .
Uwaga / Notatka
Dostawcy danych programu .NET Framework dołączone do programu .NET Framework w wersji 1.0 nie weryfikują Precision wartości parametrów Decimal lub Scale . Może to spowodować obcięcie danych w źródle danych. Jeśli używasz programu .NET Framework w wersji 1.0, sprawdź Precision wartości i SqlParameterDecimal przed ustawieniem wartości parametru. Scale wartości przekraczające skalę parametrów Decimal są nadal obcinane.