OleDbParameter.Precision 属性
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
获取或设置用于表示 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 的精度。
实现
- 属性
示例
以下示例创建 并 OleDbParameter 设置其一些属性。
Public Sub CreateOleDbParameter()
Dim parameter As New OleDbParameter("Price", OleDbType.Decimal)
parameter.Value = 3.1416
parameter.Precision = 8
parameter.Scale = 4
End Sub 'CreateOleDbParameter
public void CreateOleDbParameter()
{
OleDbParameter parameter = new OleDbParameter("Price", OleDbType.Decimal);
parameter.Value = 3.1416;
parameter.Precision = 8;
parameter.Scale = 4;
}
注解
属性 Precision 仅用于十进制和数值输入参数。
在Precision调用 Prepare 的 方法OleDbCommand之前,应仅为 Decimal
和 Numeric
参数设置 属性。
将此属性设置为数据库中的值以外的值取决于数据提供程序的实现,并且可能会返回错误代码、截断或舍入数据。
属性Precision
仅影响其 为 Decimal
、 Numeric
或 VarNumeric
的参数OleDbType。 对于其他数据类型, Precision
将忽略 。
注意
不支持使用此属性来强制传递到数据库的数据。 若要在将数据传递到数据库之前对数据进行舍入、截断或强制数据,请在将值分配给参数的 属性之前,使用 Math 属于 System
命名空间的 Value
类。
注意
.NET Framework版本 1.0 附带.NET Framework数据提供程序不会验证 Precision 参数值的 或 ScaleDecimal 。 这可能导致在数据源中插入截断的数据。 如果使用 .NET Framework 版本 1.0,请在Precision设置参数值之前验证 值的 和 ScaleDecimal 。 Scale 超过 Decimal 参数刻度的值仍会被截断。