SqlCommand.Parameters Özellik

Tanım

SqlParameterCollection öğesini alır.

public:
 property Microsoft::Data::SqlClient::SqlParameterCollection ^ Parameters { Microsoft::Data::SqlClient::SqlParameterCollection ^ get(); };
public Microsoft.Data.SqlClient.SqlParameterCollection Parameters { get; }
member this.Parameters : Microsoft.Data.SqlClient.SqlParameterCollection
Public ReadOnly Property Parameters As SqlParameterCollection

Özellik Değeri

Transact-SQL deyiminin veya saklı yordamın parametreleri. Varsayılan değer boş bir koleksiyondur.

Örnekler

Aşağıdaki örnekte, nasıl oluşturulacağı SqlCommand ve parametresinin nasıl ekleneceği gösterilmektedir SqlParameterCollection.

using System;
using System.Data;
using Microsoft.Data.SqlClient;


class Program
{
    static void Main()
    {
        string connectionString = GetConnectionString();
        string demo = @"<StoreSurvey xmlns=""http://schemas.microsoft.com/sqlserver/2004/07/adventure-works/StoreSurvey""><AnnualSales>1500000</AnnualSales><AnnualRevenue>150000</AnnualRevenue><BankName>Primary International</BankName><BusinessType>OS</BusinessType><YearOpened>1974</YearOpened><Specialty>Road</Specialty><SquareFeet>38000</SquareFeet><Brands>3</Brands><Internet>DSL</Internet><NumberEmployees>40</NumberEmployees></StoreSurvey>";
        Int32 id = 3;
        UpdateDemographics(id, demo, connectionString);
        Console.ReadLine();
    }
    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);
            }
        }
    }
    static private string GetConnectionString()
    {
        // To avoid storing the connection string in your code, 
        // you can retrieve it from a configuration file.
        return "Data Source=(local);Initial Catalog=AdventureWorks;"
            + "Integrated Security=SSPI";
    }
}

Açıklamalar

SQL Server için Microsoft .NET Framework Veri Sağlayıcısı, bir SQL Deyimine veya CommandType.Text komutu tarafından çağrılan saklı yordama parametre geçirmek için soru işareti (?) yer tutucusunu desteklemez. Bu durumda adlandırılmış parametreler kullanılmalıdır. Örneğin:

SELECT * FROM Customers WHERE CustomerID = @CustomerID

Uyarı

Koleksiyondaki parametreler yürütülecek sorgu gereksinimleriyle eşleşmiyorsa bir hata oluşabilir.

Daha fazla bilgi için bkz . Parametreleri yapılandırma.

Şunlara uygulanır