Share via

SqlParameter.Value Property


Gets or sets the value of the parameter.

 virtual property System::Object ^ Value { System::Object ^ get(); void set(System::Object ^ value); };
public override object Value { get; set; }
public override object Value { get; set; }
member this.Value : obj with get, set
member this.Value : obj with get, set
Public Overrides Property Value As Object

Property Value

An Object that is the value of the parameter. The default value is null.




The following example creates a SqlParameter and sets some of its properties.

// using Microsoft.Data.SqlClient;
static void CreateSqlParameterVersion()
    SqlParameter parameter = new SqlParameter("Description", SqlDbType.VarChar, 88);
    parameter.Value = "garden hose";


For input parameters, the value is bound to the SqlCommand that is sent to the server. For output and return value parameters, the value is set on completion of the SqlCommand and after the SqlDataReader is closed.

This property can be set to null or DBNull.Value. Use DBNull.Value to send a NULL value as the value of the parameter. Use null or do not set Value to use the default value for the parameter.

An exception is thrown if non-Unicode XML data is passed as a string.

If the application specifies the database type, the bound value is converted to that type when the provider sends the data to the server. The provider tries 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.

Both the DbType and SqlDbType properties can be inferred by setting the Value.

The Value property is overwritten by SqlDataAdapter.UpdateCommand.

For information about streaming, see SqlClient Streaming Support.

Applies to