When sending a null parameter value to the server, the user must specify System.DBNull, not null. A null value in the system is an empty object that has no value. System.DBNull is used to represent null values.
If the application specifies the data type, the bound value is converted to that type when the provider sends the data to the server. The provider attempts to convert any type of value if it supports the IConvertible interface. Conversion errors may result if the specified type is not compatible with the value.
The System.Data.Common.DbParameter.DbType property can be inferred by setting Value. If applicable, the size, precision, and scale will also be inferred from Value.
The Value property is overwritten by the System.Data.Common.DbDataAdapter.Update() method.