SqlParameterCollection.AddWithValue(String, Object) Метод

Определение

Добавляет значение в конец коллекции 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

Параметры

parameterName
String

Имя параметра.

value
Object

Добавляемое значение. Используйте Value вместо null для указания значения null.

Возвращаемое значение

SqlParameter

Объект SqlParameter.

Примеры

В следующем примере показано использование метода 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

Комментарии

AddWithValue заменяет SqlParameterCollection.Add метод, который принимает String и Object . Перегрузка Add , которая принимает строку и объект, является устаревшей из-за возможной неоднозначности с SqlParameterCollection.Add перегрузкой, принимающей String значение, и значением перечисления, в SqlDbType котором передача целого числа со строкой может интерпретироваться как значение параметра или соответствующее SqlDbType значение. Используйте AddWithValue каждый раз, когда нужно добавить параметр, указав его имя и значение.

Для SqlDbType Xml значений перечисления можно использовать строку, значение XML, XmlReader экземпляр производного типа или SqlXml объект.

Применяется к

См. также раздел