OleDbParameter.Scale 属性
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
获取或设置所解析的 Value 的小数位数。
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
属性值
对 Value 进行解析的小数位数。 默认值为 0。
实现
- 属性
示例
以下示例创建 并 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;
}
注解
属性 Scale 仅在调用 Prepare 的 方法 OleDbCommand 之前用于十进制和数值输入参数,并指定数值输出参数。
将此属性设置为数据库中的值以外的值取决于数据提供程序的实现,并且可能会返回错误代码、截断或舍入数据。
使用 SQL Server Native Client 10 (或更高版本) 时,若要绑定类型为 Decimal、Numeric、VarNumeric、 DBDate或 DBTimeStamp的参数,必须手动指定适当的刻度值。
注意
不支持使用此属性来强制传递到数据库的数据。 若要在将数据传递到数据库之前对数据进行舍入、截断或强制数据,请在将值分配给参数的 属性之前,使用 Math 属于 System 命名空间的 Value 类。
注意
.NET Framework版本 1.0 附带.NET Framework数据提供程序不会验证 Precision 参数值的 或 ScaleDecimal 。 这可能导致在数据源中插入截断的数据。 如果使用 .NET Framework 版本 1.0,请在Precision设置参数值之前验证 值的 和 OleDbParameterDecimal 。 Scale 超过 Decimal 参数刻度的值仍会被截断。