SqlParameterCollection.AddWithValue(String, Object) Método

Definição

Adiciona um valor ao final do SqlParameterCollection.

public:
 System::Data::SqlClient::SqlParameter ^ AddWithValue(System::String ^ parameterName, System::Object ^ value);
public System.Data.SqlClient.SqlParameter AddWithValue (string parameterName, object value);
member this.AddWithValue : string * obj -> System.Data.SqlClient.SqlParameter
Public Function AddWithValue (parameterName As String, value As Object) As SqlParameter

Parâmetros

parameterName
String

O nome do parâmetro.

value
Object

O valor a ser adicionado. Use Value em vez de nulo para indicar um valor nulo.

Retornos

Um objeto SqlParameter.

Exemplos

O exemplo a seguir demonstra como usar o método AddWithValue.

private static void UpdateDemographics(Int32 customerID,
    string demoXml, string connectionString)
{
    // Update the demographics for a store, which is stored
    // in an xml column.
    string commandText = "UPDATE Sales.Store SET Demographics = @demographics "
        + "WHERE CustomerID = @ID;";

    using (SqlConnection connection = new SqlConnection(connectionString))
    {
        SqlCommand command = new SqlCommand(commandText, connection);
        command.Parameters.Add("@ID", SqlDbType.Int);
        command.Parameters["@ID"].Value = customerID;

        // Use AddWithValue to assign Demographics.
        // SQL Server will implicitly convert strings into XML.
        command.Parameters.AddWithValue("@demographics", demoXml);

        try
        {
            connection.Open();
            Int32 rowsAffected = command.ExecuteNonQuery();
            Console.WriteLine("RowsAffected: {0}", rowsAffected);
        }
        catch (Exception ex)
        {
            Console.WriteLine(ex.Message);
        }
    }
}
Private Sub UpdateDemographics(ByVal customerID As Integer, _
    ByVal demoXml As String, _
    ByVal connectionString As String)

    ' Update the demographics for a store, which is stored 
    ' in an xml column.
    Dim commandText As String = _
     "UPDATE Sales.Store SET Demographics = @demographics " _
     & "WHERE CustomerID = @ID;"

    Using connection As New SqlConnection(connectionString)
        Dim command As New SqlCommand(commandText, connection)

        ' Add CustomerID parameter for WHERE clause.
        command.Parameters.Add("@ID", SqlDbType.Int)
        command.Parameters("@ID").Value = customerID

        ' Use AddWithValue to assign Demographics.
        ' SQL Server will implicitly convert strings into XML.
        command.Parameters.AddWithValue("@demographics", demoXml)

        Try
            connection.Open()
            Dim rowsAffected As Integer = command.ExecuteNonQuery()
            Console.WriteLine("RowsAffected: {0}", rowsAffected)

        Catch ex As Exception
            Console.WriteLine(ex.Message)
        End Try
    End Using
End Sub

Comentários

AddWithValue substitui o método SqlParameterCollection.Add que usa um String e um Object. A sobrecarga de Add que usa uma cadeia de caracteres e um objeto foi preterida devido à possível ambiguidade com a sobrecarga SqlParameterCollection.Add que usa um String e um valor de enumeração SqlDbType em que passar um inteiro com a cadeia de caracteres poderia ser interpretado como sendo o valor do parâmetro ou o valor SqlDbType correspondente. Use AddWithValue sempre que quiser adicionar um parâmetro especificando seu nome e valor.

Para SqlDbTypeXml valores de enumeração, você pode usar uma cadeia de caracteres, um valor XML, uma instância de tipo derivado XmlReader ou um objeto SqlXml.

Aplica-se a

Confira também