通过


SqlParameter.Precision 属性

定义

获取或设置用于表示 Value 属性的最大位数。

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

属性值

用于表示 Value 属性的最大位数。 默认值为 0。 这表示数据提供程序设置精度 。Value

实现

属性

示例

以下示例创建 SqlParameter 并设置其一些属性。

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

注解

属性 由具有 /> 的参数 使用。

无需为输入参数指定值 PrecisionScale 属性,因为可以从参数值推断它们。 输出 参数和需要为参数指定完整元数据而不指示值的方案(例如,指定具有特定精度和小数位数的 null 值)时,需要使用 < a0/>。

注释

不支持使用此属性强制传递给数据库的数据。 若要在将数据传递给数据库之前对其进行舍入、截断或其他强制数据,请使用 Math 命名空间中的 System 类,然后再将值分配给参数 Value 的属性。

注释

Microsoft .NET Framework 版本 1.0 附带的 .NET Framework 数据提供程序不验证Precision参数值或ScaleDecimal参数值。 这可能会导致在数据源中插入截断的数据。 如果使用 .NET Framework 版本 1.0,请在Precision设置参数值之前验证值和ScaleDecimal值。 使用 .NET Framework 版本 1.1 或更高版本时,如果 Decimal 参数值设置为无效 Precision,则会引发异常。 Scale 超出 Decimal 参数刻度的值仍将被截断。

适用于

另请参阅