SqlCommand.Parameters SqlCommand.Parameters SqlCommand.Parameters SqlCommand.Parameters Property

定義

SqlParameterCollection を取得します。Gets the SqlParameterCollection.

public:
 property System::Data::SqlClient::SqlParameterCollection ^ Parameters { System::Data::SqlClient::SqlParameterCollection ^ get(); };
[System.Data.DataSysDescription("DbCommand_Parameters")]
public System.Data.SqlClient.SqlParameterCollection Parameters { get; }
member this.Parameters : System.Data.SqlClient.SqlParameterCollection
Public ReadOnly Property Parameters As SqlParameterCollection

プロパティ値

Transact-SQL ステートメントまたはストアド プロシージャのパラメーター。The parameters of the Transact-SQL statement or stored procedure. 既定値は空のコレクションです。The default is an empty collection.

次の例では、作成する方法、SqlCommandパラメーターを追加し、SqlParameterCollectionします。The following example demonstrates how to create a SqlCommand and add parameters to the SqlParameterCollection.

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

注釈

Microsoft .NET Framework Data Provider for SQL Server が SQL ステートメントまたはのコマンドによって呼び出されるストアド プロシージャにパラメーターを渡すの疑問符 (?) プレース ホルダーをサポートしていませんCommandType.Textします。The Microsoft .NET Framework Data Provider for SQL Server does not support the question mark (?) placeholder for passing parameters to a SQL Statement or a stored procedure called by a command of CommandType.Text. ここでは、名前付きパラメーターを使用する必要があります。In this case, named parameters must be used. 次に例を示します。For example:

SELECT * FROM Customers WHERE CustomerID = @CustomerIDSELECT * FROM Customers WHERE CustomerID = @CustomerID

注意

コレクション内のパラメーターで実行されるクエリの要件が一致しない場合、エラーが表示される場合があります。If the parameters in the collection do not match the requirements of the query to be executed, an error may result.

詳細については、次を参照してください。構成パラメーターとパラメーターのデータ型します。For more information, see Configuring Parameters and Parameter Data Types.

適用対象

こちらもご覧ください