OleDbParameter.Precision OleDbParameter.Precision OleDbParameter.Precision OleDbParameter.Precision Property


Gets or sets the maximum number of digits used to represent the Value property.

 property System::Byte Precision { System::Byte get(); void set(System::Byte value); };
public byte Precision { get; set; }
member this.Precision : byte with get, set
Public Property Precision As Byte

Property Value

The maximum number of digits used to represent the Value property. The default value is 0, which indicates that the data provider sets the precision for Value.



The following example creates an OleDbParameter and sets some of its properties.

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;  


The Precision property is only used for decimal and numeric input parameters.

The Precision property should be set only for Decimal and Numeric parameters prior to calling the Prepare method of the OleDbCommand.

Setting this property to a value other than the value in the database depends on the implementation of the data provider and may return an error code, truncate, or round data.

The Precision property only affects parameters whose OleDbType is Decimal, Numeric, or VarNumeric. For other data types, Precision is ignored.


Use of this property to coerce data passed to the database is not supported. To round, truncate, or otherwise coerce data before passing it to the database, use the Math class that is part of the System namespace prior to assigning a value to the parameter's Value property.


.NET Framework data providers that are included with the .NET Framework version 1.0 do not verify the Precision or Scale of Decimal parameter values. This can cause truncated data to be inserted at the data source. If you are using .NET Framework version 1.0, validate the Precision and Scale of Decimal values before setting the parameter value. Scale values that exceed the Decimal parameter scale are still truncated.

Applies to

See also