SqlParameter.Precision Eigenschaft
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Ruft die maximale Anzahl von Stellen ab, die verwendet werden, um die Value-Eigenschaft darzustellen, oder legt diese fest.
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
Eigenschaftswert
Die maximale Anzahl von Stellen, die verwendet wird, um die Value-Eigenschaft darzustellen. Der Standardwert ist 0. Dadurch wird angegeben, dass der Datenanbieter die Genauigkeit für Value festlegt.
Implementiert
- Attribute
Beispiele
Im folgenden Beispiel wird ein SqlParameter erstellt und einige seiner Eigenschaften festgelegt.
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
Hinweise
Die Precision -Eigenschaft wird von Parametern mit einem SqlDbType von Decimal
verwendet.
Sie müssen keine Werte für die Precision Eigenschaften und Scale für Eingabeparameter angeben, da sie aus dem Parameterwert abgeleitet werden können.
Precision
und Scale
sind für Ausgabeparameter und für Szenarien erforderlich, in denen Sie vollständige Metadaten für einen Parameter angeben müssen, ohne einen Wert anzugeben, z. B. das Angeben eines NULL-Werts mit einer bestimmten Genauigkeit und Skalierung.
Hinweis
Die Verwendung dieser Eigenschaft zum Coerce-Daten, die an die Datenbank übergeben werden, wird nicht unterstützt. Um Daten zu runden, abzuschneiden oder anderweitig zu ermischen, bevor sie an die Datenbank übergeben werden, verwenden Sie die Math Klasse, die Teil des System
Namespace ist, bevor Sie der Eigenschaft des Value
Parameters einen Wert zuweisen.
Hinweis
Microsoft .NET Framework-Datenanbieter, die in der .NET Framework Version 1.0 enthalten sind, überprüfen die Precision Parameterwerte oder ScaleDecimal nicht. Dies kann dazu führen, dass abgeschnittene Daten an der Datenquelle eingefügt werden. Wenn Sie .NET Framework Version 1.0 verwenden, überprüfen Sie die Precision werte und ScaleDecimal, bevor Sie den Parameterwert festlegen. Wenn Sie .NET Framework Version 1.1 oder höher verwenden, wird eine Ausnahme ausgelöst, wenn ein Decimal Parameterwert mit einem ungültigen Precisionfestgelegt ist. Scale Werte, die die Decimal Parameterskala überschreiten, werden weiterhin abgeschnitten.