SqlParameter.Scale Vlastnost
Definice
Důležité
Některé informace platí pro předběžně vydaný produkt, který se může zásadně změnit, než ho výrobce nebo autor vydá. Microsoft neposkytuje žádné záruky, výslovné ani předpokládané, týkající se zde uváděných informací.
Získá nebo nastaví počet desetinných míst, na které Value se přeloží.
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
Hodnota vlastnosti
Počet desetinných míst, na který Value se přeloží. Výchozí hodnota je 0.
Implementuje
- Atributy
Příklady
Následující příklad vytvoří SqlParameter a nastaví některé jeho vlastnosti.
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
Poznámky
Vlastnost Scale používají parametry, které mají hodnotu SqlDbTypeDecimal
, DateTime2
DateTimeOffset
, nebo Time
.
Upozornění
Data mohou být zkrácena, pokud Scale vlastnost není explicitně zadána a data na serveru se nehodí do měřítka 0 (výchozí).
DateTime2
Pro typ bude měřítko 0 (výchozí) předáno jako datetime2(7). V současné době neexistuje způsob, jak odeslat parametr jako datetime2(0). Škály 1–7 fungují podle očekávání.
Tento problém se týká DateTimeOffset
i a Time
.
Není nutné zadávat hodnoty vlastností Precision a Scale vstupních parametrů, protože je možné je odvodit z hodnoty parametru.
Precision
a Scale
jsou vyžadovány pro výstupní parametry a pro scénáře, kdy potřebujete zadat úplná metadata pro parametr bez uvedení hodnoty, například zadání hodnoty null s konkrétní přesností a měřítkem.
Poznámka
Použití této vlastnosti k vysoučování dat předaných do databáze není podporováno. Pokud chcete data před předáním do databáze zaokrouhlit, zkrátit nebo jinak vymátit, použijte před přiřazením hodnoty k vlastnosti parametru MathValue
třídu, která je součástí System
oboru názvů.
Poznámka
Zprostředkovatelé dat rozhraní .NET Framework, které jsou součástí rozhraní .NET Framework verze 1.0, neověřují Precision hodnoty parametrů nebo ScaleDecimal . To může způsobit vložení zkrácených dat do zdroje dat. Pokud používáte rozhraní .NET Framework verze 1.0, před nastavením hodnoty parametru ověřte Precision hodnoty aSqlParameter.Decimal Scale hodnoty, které překračují měřítko parametru Decimal , jsou stále zkráceny.