Freigeben über


SqlParameter.Precision-Eigenschaft

Ruft die maximale Anzahl von Ziffern ab, die zur Darstellung der Value-Eigenschaft verwendet werden kann, oder legt diese fest.

Namespace: System.Data.SqlClient
Assembly: System.Data (in system.data.dll)

Syntax

'Declaration
Public Property Precision As Byte
'Usage
Dim instance As SqlParameter
Dim value As Byte

value = instance.Precision

instance.Precision = value
public byte Precision { get; set; }
public:
virtual property unsigned char Precision {
    unsigned char get () sealed;
    void set (unsigned char value) sealed;
}
/** @property */
public final byte get_Precision ()

/** @property */
public final void set_Precision (byte value)
public final function get Precision () : byte

public final function set Precision (value : byte)

Eigenschaftenwert

Die maximale Anzahl von Ziffern für die Darstellung der Value-Eigenschaft. Der Standardwert ist 0 (null) und gibt an, dass der Datenanbieter die Genauigkeit für Value festlegt.

Hinweise

Die Precision-Eigenschaft wird von Parametern verwendet, deren SqlDbTypeDecimal ist.

Sie müssen bei Eingabeparametern keine Werte für die Precision-Eigenschaft und die Scale-Eigenschaft angeben, da diese aus dem Parameterwert abgeleitet werden können. Precision und Scale sind für Ausgabeparameter und in Situationen erforderlich, in denen Sie vollständige Metadaten für einen Parameter angeben müssen, ohne einen Wert anzugeben, z. B. durch Angabe eines NULL-Werts mit einer bestimmten Genauigkeit und Skalierung.

Hinweis

Die Verwendung dieser Eigenschaft zum Umwandeln von an die Datenbank übergebenen Daten wird nicht unterstützt. Zum Runden, Abschneiden oder Umwandeln der Daten vor dem Übergeben an die Datenbank verwenden Sie die Math-Klasse im System-Namespace, bevor Sie der Value-Eigenschaft des Parameters einen Wert zuweisen.

Hinweis

Die im Lieferumfang von .NET Framework, Version 1.0, enthaltenen Microsoft .NET Framework-Datenanbieter führen keine Überprüfung von Precision oder Scale für die Decimal-Parameterwerte durch. Dies kann dazu führen, dass abgeschnittene Daten in die Datenquelle eingefügt werden. Wenn Sie mit .NET Framework, Version 1.0, arbeiten, validieren Sie Precision und Scale für die Decimal-Werte, bevor Sie den Parameterwert festlegen. Bei der Verwendung von .NET Framework ab Version 1.1 wird eine Ausnahme ausgelöst, wenn ein Decimal-Parameterwert mit einer ungültigen Precision festgelegt wird. Scale-Werte, die die Decimal-Parameterskalierung überschreiten, werden weiterhin abgeschnitten.

Beispiel

Im folgenden Beispiel wird ein SqlParameter erstellt, und einige seiner Eigenschaften werden festgelegt.

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
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);
}

Plattformen

Windows 98, Windows 2000 SP4, Windows CE, Windows Millennium Edition, Windows Mobile für Pocket PC, Windows Mobile für Smartphone, Windows Server 2003, Windows XP Media Center Edition, Windows XP Professional x64 Edition, Windows XP SP2, Windows XP Starter Edition

.NET Framework unterstützt nicht alle Versionen sämtlicher Plattformen. Eine Liste der unterstützten Versionen finden Sie unter Systemanforderungen.

Versionsinformationen

.NET Framework

Unterstützt in: 2.0, 1.1, 1.0

.NET Compact Framework

Unterstützt in: 2.0, 1.0

Siehe auch

Referenz

SqlParameter-Klasse
SqlParameter-Member
System.Data.SqlClient-Namespace

Weitere Ressourcen

Verbinden und Abrufen von Daten mit ADO.NET
Verwenden des .NET Framework-Datenanbieters für SQL Server