Aracılığıyla paylaş


SqlCommand Sınıf

Tanım

SQL Server veritabanında yürütülecek transact-SQL deyimini veya saklı yordamı temsil eder. Bu sınıf devralınamaz.

public ref class SqlCommand sealed : System::Data::Common::DbCommand, ICloneable
public sealed class SqlCommand : System.Data.Common.DbCommand, ICloneable
type SqlCommand = class
    inherit DbCommand
    interface ICloneable
Public NotInheritable Class SqlCommand
Inherits DbCommand
Implements ICloneable
Devralma
SqlCommand
Uygulamalar

Örnekler

Aşağıdaki örnek bir SqlConnection, SqlCommandve SqlDataReaderoluşturur. Örnek, verileri okuyup konsola yazar. Son olarak, örnek kod bloklarından SqlDataReader çıktıktan sonra SqlConnection ve öğesini Using kapatır.

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


namespace SqlCommandCS
{
    class Program
    {
        static void Main()
        {
            string str = "Data Source=(local);Initial Catalog=Northwind;"
                + "Integrated Security=SSPI";
            ReadOrderData(str);

        }

        private static void ReadOrderData(string connectionString)
        {
            string queryString =
                "SELECT OrderID, CustomerID FROM dbo.Orders;";
            using (SqlConnection connection = new SqlConnection(
                       connectionString))
            {
                SqlCommand command = new SqlCommand(
                    queryString, connection);
                connection.Open();
                using (SqlDataReader reader = command.ExecuteReader())
                {
                    while (reader.Read())
                    {
                        Console.WriteLine(String.Format("{0}, {1}",
                            reader[0], reader[1]));
                    }
                }
            }
        }

Aşağıdaki örnekte farklı türlerde SqlCommand nesnelerinin nasıl oluşturulacağı ve yürütülacağı gösterilmektedir.

İlk olarak aşağıdaki betiği yürüterek örnek veritabanını oluşturmanız gerekir:

USE [master]
GO

CREATE DATABASE [MySchool]
GO

USE [MySchool]
GO

SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE procedure [dbo].[CourseExtInfo] @CourseId int
as
select c.CourseID,c.Title,c.Credits,d.Name as DepartmentName
from Course as c left outer join Department as d on c.DepartmentID=d.DepartmentID
where c.CourseID=@CourseId

GO

SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
create procedure [dbo].[DepartmentInfo] @DepartmentId int,@CourseCount int output
as
select @CourseCount=Count(c.CourseID)
from course as c
where c.DepartmentID=@DepartmentId

select d.DepartmentID,d.Name,d.Budget,d.StartDate,d.Administrator
from Department as d
where d.DepartmentID=@DepartmentId

GO

SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
Create PROCEDURE [dbo].[GetDepartmentsOfSpecifiedYear]
@Year int,@BudgetSum money output
AS
BEGIN
SELECT @BudgetSum=SUM([Budget])
FROM [MySchool].[dbo].[Department]
Where YEAR([StartDate])=@Year

SELECT [DepartmentID]
,[Name]
,[Budget]
,[StartDate]
,[Administrator]
FROM [MySchool].[dbo].[Department]
Where YEAR([StartDate])=@Year

END
GO

SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[Course]([CourseID] [nvarchar](10) NOT NULL,
[Year] [smallint] NOT NULL,
[Title] [nvarchar](100) NOT NULL,
[Credits] [int] NOT NULL,
[DepartmentID] [int] NOT NULL,
CONSTRAINT [PK_Course] PRIMARY KEY CLUSTERED
(
[CourseID] ASC,
[Year] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]) ON [PRIMARY]

GO

SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[Department]([DepartmentID] [int] IDENTITY(1,1) NOT NULL,
[Name] [nvarchar](50) NOT NULL,
[Budget] [money] NOT NULL,
[StartDate] [datetime] NOT NULL,
[Administrator] [int] NULL,
CONSTRAINT [PK_Department] PRIMARY KEY CLUSTERED
(
[DepartmentID] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]) ON [PRIMARY]

GO

SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[Person]([PersonID] [int] IDENTITY(1,1) NOT NULL,
[LastName] [nvarchar](50) NOT NULL,
[FirstName] [nvarchar](50) NOT NULL,
[HireDate] [datetime] NULL,
[EnrollmentDate] [datetime] NULL,
CONSTRAINT [PK_School.Student] PRIMARY KEY CLUSTERED
(
[PersonID] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]) ON [PRIMARY]

GO

SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
CREATE TABLE [dbo].[StudentGrade]([EnrollmentID] [int] IDENTITY(1,1) NOT NULL,
[CourseID] [nvarchar](10) NOT NULL,
[StudentID] [int] NOT NULL,
[Grade] [decimal](3, 2) NOT NULL,
CONSTRAINT [PK_StudentGrade] PRIMARY KEY CLUSTERED
(
[EnrollmentID] ASC
)WITH (PAD_INDEX = OFF, STATISTICS_NORECOMPUTE = OFF, IGNORE_DUP_KEY = OFF, ALLOW_ROW_LOCKS = ON, ALLOW_PAGE_LOCKS = ON) ON [PRIMARY]) ON [PRIMARY]

GO

SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
create view [dbo].[EnglishCourse]
as
select c.CourseID,c.Title,c.Credits,c.DepartmentID
from Course as c join Department as d on c.DepartmentID=d.DepartmentID
where d.Name=N'English'

GO
INSERT [dbo].[Course] ([CourseID], [Year], [Title], [Credits], [DepartmentID]) VALUES (N'C1045', 2012, N'Calculus', 4, 7)
INSERT [dbo].[Course] ([CourseID], [Year], [Title], [Credits], [DepartmentID]) VALUES (N'C1061', 2012, N'Physics', 4, 1)
INSERT [dbo].[Course] ([CourseID], [Year], [Title], [Credits], [DepartmentID]) VALUES (N'C2021', 2012, N'Composition', 3, 2)
INSERT [dbo].[Course] ([CourseID], [Year], [Title], [Credits], [DepartmentID]) VALUES (N'C2042', 2012, N'Literature', 4, 2)
SET IDENTITY_INSERT [dbo].[Department] ON

INSERT [dbo].[Department] ([DepartmentID], [Name], [Budget], [StartDate], [Administrator]) VALUES (1, N'Engineering', 350000.0000, CAST(0x0000999C00000000 AS DateTime), 2)
INSERT [dbo].[Department] ([DepartmentID], [Name], [Budget], [StartDate], [Administrator]) VALUES (2, N'English', 120000.0000, CAST(0x0000999C00000000 AS DateTime), 6)
INSERT [dbo].[Department] ([DepartmentID], [Name], [Budget], [StartDate], [Administrator]) VALUES (4, N'Economics', 200000.0000, CAST(0x0000999C00000000 AS DateTime), 4)
INSERT [dbo].[Department] ([DepartmentID], [Name], [Budget], [StartDate], [Administrator]) VALUES (7, N'Mathematics', 250024.0000, CAST(0x0000999C00000000 AS DateTime), 3)
SET IDENTITY_INSERT [dbo].[Department] OFF
SET IDENTITY_INSERT [dbo].[Person] ON

INSERT [dbo].[Person] ([PersonID], [LastName], [FirstName], [HireDate], [EnrollmentDate]) VALUES (1, N'Hu', N'Nan', NULL, CAST(0x0000A0BF00000000 AS DateTime))
INSERT [dbo].[Person] ([PersonID], [LastName], [FirstName], [HireDate], [EnrollmentDate]) VALUES (2, N'Norman', N'Laura', NULL, CAST(0x0000A0BF00000000 AS DateTime))
INSERT [dbo].[Person] ([PersonID], [LastName], [FirstName], [HireDate], [EnrollmentDate]) VALUES (3, N'Olivotto', N'Nino', NULL, CAST(0x0000A0BF00000000 AS DateTime))
INSERT [dbo].[Person] ([PersonID], [LastName], [FirstName], [HireDate], [EnrollmentDate]) VALUES (4, N'Anand', N'Arturo', NULL, CAST(0x0000A0BF00000000 AS DateTime))
INSERT [dbo].[Person] ([PersonID], [LastName], [FirstName], [HireDate], [EnrollmentDate]) VALUES (5, N'Jai', N'Damien', NULL, CAST(0x0000A0BF00000000 AS DateTime))
INSERT [dbo].[Person] ([PersonID], [LastName], [FirstName], [HireDate], [EnrollmentDate]) VALUES (6, N'Holt', N'Roger', CAST(0x000097F100000000 AS DateTime), NULL)
INSERT [dbo].[Person] ([PersonID], [LastName], [FirstName], [HireDate], [EnrollmentDate]) VALUES (7, N'Martin', N'Randall', CAST(0x00008B1A00000000 AS DateTime), NULL)
SET IDENTITY_INSERT [dbo].[Person] OFF
SET IDENTITY_INSERT [dbo].[StudentGrade] ON

INSERT [dbo].[StudentGrade] ([EnrollmentID], [CourseID], [StudentID], [Grade]) VALUES (1, N'C1045', 1, CAST(3.50 AS Decimal(3, 2)))
INSERT [dbo].[StudentGrade] ([EnrollmentID], [CourseID], [StudentID], [Grade]) VALUES (2, N'C1045', 2, CAST(3.00 AS Decimal(3, 2)))
INSERT [dbo].[StudentGrade] ([EnrollmentID], [CourseID], [StudentID], [Grade]) VALUES (3, N'C1045', 3, CAST(2.50 AS Decimal(3, 2)))
INSERT [dbo].[StudentGrade] ([EnrollmentID], [CourseID], [StudentID], [Grade]) VALUES (4, N'C1045', 4, CAST(4.00 AS Decimal(3, 2)))
INSERT [dbo].[StudentGrade] ([EnrollmentID], [CourseID], [StudentID], [Grade]) VALUES (5, N'C1045', 5, CAST(3.50 AS Decimal(3, 2)))
INSERT [dbo].[StudentGrade] ([EnrollmentID], [CourseID], [StudentID], [Grade]) VALUES (6, N'C1061', 1, CAST(4.00 AS Decimal(3, 2)))
INSERT [dbo].[StudentGrade] ([EnrollmentID], [CourseID], [StudentID], [Grade]) VALUES (7, N'C1061', 3, CAST(3.50 AS Decimal(3, 2)))
INSERT [dbo].[StudentGrade] ([EnrollmentID], [CourseID], [StudentID], [Grade]) VALUES (8, N'C1061', 4, CAST(2.50 AS Decimal(3, 2)))
INSERT [dbo].[StudentGrade] ([EnrollmentID], [CourseID], [StudentID], [Grade]) VALUES (9, N'C1061', 5, CAST(1.50 AS Decimal(3, 2)))
INSERT [dbo].[StudentGrade] ([EnrollmentID], [CourseID], [StudentID], [Grade]) VALUES (10, N'C2021', 1, CAST(2.50 AS Decimal(3, 2)))
INSERT [dbo].[StudentGrade] ([EnrollmentID], [CourseID], [StudentID], [Grade]) VALUES (11, N'C2021', 2, CAST(3.50 AS Decimal(3, 2)))
INSERT [dbo].[StudentGrade] ([EnrollmentID], [CourseID], [StudentID], [Grade]) VALUES (12, N'C2021', 4, CAST(3.00 AS Decimal(3, 2)))
INSERT [dbo].[StudentGrade] ([EnrollmentID], [CourseID], [StudentID], [Grade]) VALUES (13, N'C2021', 5, CAST(3.00 AS Decimal(3, 2)))
INSERT [dbo].[StudentGrade] ([EnrollmentID], [CourseID], [StudentID], [Grade]) VALUES (14, N'C2042', 1, CAST(2.00 AS Decimal(3, 2)))
INSERT [dbo].[StudentGrade] ([EnrollmentID], [CourseID], [StudentID], [Grade]) VALUES (15, N'C2042', 2, CAST(3.50 AS Decimal(3, 2)))
INSERT [dbo].[StudentGrade] ([EnrollmentID], [CourseID], [StudentID], [Grade]) VALUES (16, N'C2042', 3, CAST(4.00 AS Decimal(3, 2)))
INSERT [dbo].[StudentGrade] ([EnrollmentID], [CourseID], [StudentID], [Grade]) VALUES (17, N'C2042', 5, CAST(3.00 AS Decimal(3, 2)))
SET IDENTITY_INSERT [dbo].[StudentGrade] OFF
ALTER TABLE [dbo].[Course]  WITH CHECK ADD  CONSTRAINT [FK_Course_Department] FOREIGN KEY([DepartmentID])
REFERENCES [dbo].[Department] ([DepartmentID])
GO
ALTER TABLE [dbo].[Course] CHECK CONSTRAINT [FK_Course_Department]
GO
ALTER TABLE [dbo].[StudentGrade]  WITH CHECK ADD  CONSTRAINT [FK_StudentGrade_Student] FOREIGN KEY([StudentID])
REFERENCES [dbo].[Person] ([PersonID])
GO
ALTER TABLE [dbo].[StudentGrade] CHECK CONSTRAINT [FK_StudentGrade_Student]
GO

Ardından, aşağıdakileri derleyin ve yürütin:

using System;
using System.Data;
using Microsoft.Data.SqlClient;
using System.Threading.Tasks;

class Program
{

    static class SqlHelper
    {
        // Set the connection, command, and then execute the command with non query.
        public static Int32 ExecuteNonQuery(String connectionString, String commandText,
        CommandType commandType, params SqlParameter[] parameters)
        {
            using (SqlConnection conn = new SqlConnection(connectionString))
            {
                using (SqlCommand cmd = new SqlCommand(commandText, conn))
                {
                    // There're three command types: StoredProcedure, Text, TableDirect. The TableDirect
                    // type is only for OLE DB.
                    cmd.CommandType = commandType;
                    cmd.Parameters.AddRange(parameters);

                    conn.Open();
                    return cmd.ExecuteNonQuery();
                }
            }
        }

        // Set the connection, command, and then execute the command and only return one value.
        public static Object ExecuteScalar(String connectionString, String commandText,
        CommandType commandType, params SqlParameter[] parameters)
        {
            using (SqlConnection conn = new SqlConnection(connectionString))
            {
                using (SqlCommand cmd = new SqlCommand(commandText, conn))
                {
                    cmd.CommandType = commandType;
                    cmd.Parameters.AddRange(parameters);

                    conn.Open();
                    return cmd.ExecuteScalar();
                }
            }
        }

        // Set the connection, command, and then execute the command with query and return the reader.
        public static SqlDataReader ExecuteReader(String connectionString, String commandText,
        CommandType commandType, params SqlParameter[] parameters)
        {
            SqlConnection conn = new SqlConnection(connectionString);

            using (SqlCommand cmd = new SqlCommand(commandText, conn))
            {
                cmd.CommandType = commandType;
                cmd.Parameters.AddRange(parameters);

                conn.Open();
                // When using CommandBehavior.CloseConnection, the connection will be closed when the
                // IDataReader is closed.
                SqlDataReader reader = cmd.ExecuteReader(CommandBehavior.CloseConnection);

                return reader;
            }
        }
    }

    static void Main(string[] args)
    {
        String connectionString = "Data Source=(local);Initial Catalog=MySchool;Integrated Security=True;";

        CountCourses(connectionString, 2012);
        Console.WriteLine();

        Console.WriteLine("Following result is the departments that started from 2007:");
        GetDepartments(connectionString, 2007);
        Console.WriteLine();

        Console.WriteLine("Add the credits when the credits of course is lower than 4.");
        AddCredits(connectionString, 4);
        Console.WriteLine();

        Console.WriteLine("Please press any key to exit...");
        Console.ReadKey();
    }

    static void CountCourses(String connectionString, Int32 year)
    {
        String commandText = "Select Count([CourseID]) FROM [MySchool].[dbo].[Course] Where Year=@Year";
        SqlParameter parameterYear = new SqlParameter("@Year", SqlDbType.Int);
        parameterYear.Value = year;

        Object oValue = SqlHelper.ExecuteScalar(connectionString, commandText, CommandType.Text, parameterYear);
        Int32 count;
        if (Int32.TryParse(oValue.ToString(), out count))
            Console.WriteLine("There {0} {1} course{2} in {3}.", count > 1 ? "are" : "is", count, count > 1 ? "s" : null, year);
    }

    // Display the Departments that start from the specified year.
    static void GetDepartments(String connectionString, Int32 year)
    {
        String commandText = "dbo.GetDepartmentsOfSpecifiedYear";

        // Specify the year of StartDate
        SqlParameter parameterYear = new SqlParameter("@Year", SqlDbType.Int);
        parameterYear.Value = year;

        // When the direction of parameter is set as Output, you can get the value after
        // executing the command.
        SqlParameter parameterBudget = new SqlParameter("@BudgetSum", SqlDbType.Money);
        parameterBudget.Direction = ParameterDirection.Output;

        using (SqlDataReader reader = SqlHelper.ExecuteReader(connectionString, commandText,
        CommandType.StoredProcedure, parameterYear, parameterBudget))
        {
            Console.WriteLine("{0,-20}{1,-20}{2,-20}{3,-20}", "Name", "Budget", "StartDate",
            "Administrator");
            while (reader.Read())
            {
                Console.WriteLine("{0,-20}{1,-20:C}{2,-20:d}{3,-20}", reader["Name"],
                reader["Budget"], reader["StartDate"], reader["Administrator"]);
            }
        }
        Console.WriteLine("{0,-20}{1,-20:C}", "Sum:", parameterBudget.Value);
    }

    // If credits of course is lower than the certain value, the method will add the credits.
    static void AddCredits(String connectionString, Int32 creditsLow)
    {
        String commandText = "Update [MySchool].[dbo].[Course] Set Credits=Credits+1 Where Credits<@Credits";

        SqlParameter parameterCredits = new SqlParameter("@Credits", creditsLow);

        Int32 rows = SqlHelper.ExecuteNonQuery(connectionString, commandText, CommandType.Text, parameterCredits);

        Console.WriteLine("{0} row{1} {2} updated.", rows, rows > 1 ? "s" : null, rows > 1 ? "are" : "is");
    }
}

Açıklamalar

bir örneği SqlCommand oluşturulduğunda, okuma/yazma özellikleri ilk değerlerine ayarlanır. Bu değerlerin listesi için oluşturucuya SqlCommand bakın.

SqlCommandbir SQL Server veritabanında komutları yürütmek için aşağıdaki yöntemleri içerir:

Öğe Açıklama
BeginExecuteNonQuery Transact-SQL deyiminin veya bu SqlCommandtarafından açıklanan saklı yordamın zaman uyumsuz yürütülmesini başlatır; genellikle INSERT, DELETE, UPDATE ve SET deyimleri gibi komutları yürütür. her çağrısı BeginExecuteNonQuery , işlemi tamamlayan bir çağrıyla EndExecuteNonQuery (genellikle ayrı bir iş parçacığında) eşleştirilmelidir.
BeginExecuteReader Transact-SQL deyiminin veya bunun SqlCommand tarafından açıklanan saklı yordamın zaman uyumsuz yürütülmesini başlatır ve sunucudan bir veya daha fazla sonuç kümesi alır. her çağrısı BeginExecuteReader , işlemi tamamlayan bir çağrıyla EndExecuteReader (genellikle ayrı bir iş parçacığında) eşleştirilmelidir.
BeginExecuteXmlReader Transact-SQL deyiminin veya bu SqlCommandtarafından açıklanan saklı yordamın zaman uyumsuz yürütülmesini başlatır. için yapılan her çağrı BeginExecuteXmlReaderEndExecuteXmlReader, işlemi genellikle ayrı bir iş parçacığında tamamlayan ve bir XmlReader nesne döndüren çağrısıyla eşleştirilmelidir.
ExecuteReader Satırları döndüren komutları yürütür. Daha yüksek performans için Transact-SQL ExecuteReadersp_executesql sistem saklı yordamını kullanarak komutları çağırır. Bu nedenle, ExecuteReader Transact-SQL SET deyimleri gibi komutları yürütmek için kullanılırsa istediğiniz etkiye sahip olmayabilir.
ExecuteNonQuery Transact-SQL INSERT, DELETE, UPDATE ve SET deyimleri gibi komutları yürütür.
ExecuteScalar Veritabanından tek bir değer (örneğin, toplama değeri) alır.
ExecuteXmlReader CommandText öğesine Connection gönderir ve bir XmlReader nesnesi oluşturur.

özelliğini sıfırlayabilir CommandText ve nesneyi yeniden kullanabilirsiniz SqlCommand . Ancak, yeni veya önceki bir komutu yürütebilmeniz için önce öğesini kapatmanız SqlDataReader gerekir.

bir SqlException yürüten SqlCommandSqlConnection yöntemi tarafından oluşturulursa, önem düzeyi 19 veya daha az olduğunda açık kalır. Önem düzeyi 20 veya daha yüksek olduğunda, sunucu normalde öğesini SqlConnectionkapatır. Ancak kullanıcı bağlantıyı yeniden açabilir ve devam edebilir.

Not

Sıralı olarak da adlandırılan adsız parametreler, SQL Server için .NET Framework Veri Sağlayıcısı tarafından desteklenmez.

Oluşturucular

SqlCommand()

SqlCommand sınıfının yeni bir örneğini başlatır.

SqlCommand(String)

Sorgu metniyle sınıfının yeni bir örneğini SqlCommand başlatır.

SqlCommand(String, SqlConnection)

sorgu metni SqlCommand ve ile sınıfının yeni bir SqlConnection örneğini başlatır.

SqlCommand(String, SqlConnection, SqlTransaction)

sorgu metniyle SqlCommand sınıfının yeni bir örneğini başlatır, bir SqlConnection ve SqlTransaction .

SqlCommand(String, SqlConnection, SqlTransaction, SqlCommandColumnEncryptionSetting)

Belirtilen komut metni, bağlantı, işlem ve şifreleme ayarıyla sınıfın SqlCommand yeni bir örneğini başlatır.

Özellikler

ColumnEncryptionSetting

Bu komutun sütun şifreleme ayarını alır.

CommandText

Transact-SQL deyimini, tablo adını veya saklı yordamı veri kaynağında yürütülecek şekilde alır veya ayarlar.

CommandTimeout

Komut yürütme girişimini sonlandırmadan ve hata oluşturmadan önce bekleme süresini (saniye cinsinden) alır veya ayarlar. Varsayılan değer 30 saniyedir.

CommandType

Özelliğin CommandText nasıl yorumlandığını belirten bir değer alır veya ayarlar.

Connection

öğesinin SqlConnection bu örneği tarafından kullanılan öğesini SqlCommand alır veya ayarlar.

DesignTimeVisible

Komut nesnesinin bir Windows Form Tasarımcısı denetiminde görünür olup olmayacağını belirten bir değer alır veya ayarlar.

EnableOptimizedParameterBinding

Komutu SQL Server gönderirken Output ve InputOutput yönergelerini devre dışı bırakarak komut nesnesinin parametre performansını iyileştirmesi gerekip gerekmediğini belirten bir değer alır veya ayarlar.

Notification

Bu komuta bağlı nesneyi belirten SqlNotificationRequest bir değeri alır veya ayarlar.

NotificationAutoEnlist

Uygulamanın ortak SqlDependency bir nesneden otomatik olarak sorgu bildirimleri alıp almayacağını belirten bir değer alır veya ayarlar.

Parameters

alır SqlParameterCollection .

RetryLogicProvider

Bu komuta bağlı nesneyi belirten SqlRetryLogicBaseProvider bir değeri alır veya ayarlar.

Transaction

öğesinin SqlTransaction yürütüldiği öğesini SqlCommand alır veya ayarlar.

UpdatedRowSource

komutunun Update yöntemi DbDataAdaptertarafından kullanıldığında komut sonuçlarının uygulamasına nasıl uygulanacağını DataRow alır veya ayarlar.

Yöntemler

BeginExecuteNonQuery()

Transact-SQL deyiminin veya bu SqlCommand tarafından açıklanan saklı yordamın zaman uyumsuz yürütülmesini başlatır.

BeginExecuteNonQuery(AsyncCallback, Object)

Bir geri çağırma yordamı ve durum bilgileri verildiğinde, Transact-SQL deyiminin veya bu SqlCommand tarafından açıklanan saklı yordamın zaman uyumsuz yürütülmesini başlatır.

BeginExecuteReader()

Transact-SQL deyiminin veya bu SqlCommand tarafından açıklanan saklı yordamın zaman uyumsuz yürütülmesini başlatır ve sonuçları bir XmlReader nesne olarak döndürür.

BeginExecuteReader(AsyncCallback, Object)

Transact-SQL deyiminin veya bunun SqlCommand tarafından açıklanan saklı yordamın zaman uyumsuz yürütülmesini başlatır ve geri çağırma yordamını kullanarak sonuçları bir XmlReader nesne olarak döndürür.

BeginExecuteReader(AsyncCallback, Object, CommandBehavior)

Transact-SQL deyiminin veya bu SqlCommand tarafından açıklanan saklı yordamın zaman uyumsuz yürütülmesini başlatır. CommandBehavior değerler ve bir geri çağırma yordamı ve durum bilgileri verilerek sunucudan bir veya daha fazla sonuç kümesi alınıyor.

BeginExecuteReader(CommandBehavior)

Değerlerden birini kullanarak Transact-SQL deyiminin veya bunun SqlCommand tarafından açıklanan saklı yordamın zaman uyumsuz yürütülmesini CommandBehavior başlatır.

BeginExecuteXmlReader()

Transact-SQL deyiminin veya bu SqlCommand tarafından açıklanan saklı yordamın zaman uyumsuz yürütülmesini başlatır ve sonuçları bir XmlReader nesne olarak döndürür.

BeginExecuteXmlReader(AsyncCallback, Object)

Transact-SQL deyiminin veya bunun SqlCommand tarafından açıklanan saklı yordamın zaman uyumsuz yürütülmesini başlatır ve geri çağırma yordamını kullanarak sonuçları bir XmlReader nesne olarak döndürür.

Cancel()

yürütmesini SqlCommand iptal etmeye çalışır.

Clone()

Geçerli örneğin kopyası olan yeni SqlCommand bir nesne oluşturur.

CreateParameter()

Nesnenin yeni bir SqlParameter örneğini oluşturur.

EndExecuteNonQuery(IAsyncResult)

Transact-SQL deyiminin zaman uyumsuz yürütülmesini tamamlar.

EndExecuteReader(IAsyncResult)

transact-SQL deyiminin zaman uyumsuz yürütülmesini tamamlar ve istenen SqlDataReader döndürülerek .

EndExecuteXmlReader(IAsyncResult)

Transact-SQL deyiminin zaman uyumsuz yürütülmesini tamamlar ve istenen verileri XML olarak döndürür.

ExecuteNonQuery()

Bağlantıda bir Transact-SQL deyimi yürütür ve etkilenen satır sayısını döndürür.

ExecuteNonQueryAsync(CancellationToken)

Bağlantısında ExecuteNonQuery() bir Transact-SQL deyimi yürüten ve etkilenen satır sayısını döndüren zaman uyumsuz sürümü. İptali belirteci, işlem komut zaman aşımı dolmadan işlemin iptal edilmesini istemek için kullanılabilir. Özel durumlar döndürülen Görev nesnesi ile bildirilir.

ExecuteReader()

öğesine CommandTextConnection gönderir ve bir SqlDataReader oluşturur.

ExecuteReader(CommandBehavior)

CommandText öğesine Connection gönderir ve değerlerden CommandBehavior birini kullanarak bir SqlDataReader oluşturur.

ExecuteReaderAsync()

öğesine gönderen CommandText ve bir oluşturan zaman uyumsuz sürümü ExecuteReader()SqlDataReader .Connection Özel durumlar döndürülen Görev nesnesi ile bildirilir.

ExecuteReaderAsync(CancellationToken)

öğesine gönderen CommandText ve bir oluşturan zaman uyumsuz sürümü ExecuteReader()SqlDataReader .Connection

İptali belirteci, işlem komut zaman aşımı dolmadan işlemin iptal edilmesini istemek için kullanılabilir. Özel durumlar döndürülen Görev nesnesi ile bildirilir.

ExecuteReaderAsync(CommandBehavior)

öğesini öğesine gönderen CommandTextConnection ve bir SqlDataReader oluşturan zaman uyumsuz sürümü ExecuteReader(CommandBehavior) . Özel durumlar döndürülen Görev nesnesi ile bildirilir.

ExecuteReaderAsync(CommandBehavior, CancellationToken)

öğesini öğesine gönderen CommandTextConnection ve bir SqlDataReader İptal belirteci oluşturan zaman uyumsuz sürümü ExecuteReader(CommandBehavior) , komut zaman aşımı sona ermeden önce işlemin terk edilmesi isteğinde bulunmak için kullanılabilir. Özel durumlar döndürülen Görev nesnesi ile bildirilir.

ExecuteScalar()

Sorguyu yürütür ve sorgu tarafından döndürülen sonuç kümesindeki ilk satırın ilk sütununu döndürür. Ek sütunlar veya satırlar yoksayılır.

ExecuteScalarAsync(CancellationToken)

Zaman uyumsuz sürümü ExecuteScalar() , sorguyu zaman uyumsuz olarak yürütür ve sorgu tarafından döndürülen sonuç kümesindeki ilk satırın ilk sütununu döndürür. Ek sütunlar veya satırlar yoksayılır.

İptali belirteci, işlem komut zaman aşımı dolmadan işlemin iptal edilmesini istemek için kullanılabilir. Özel durumlar döndürülen Görev nesnesi ile bildirilir.

ExecuteXmlReader()

CommandText öğesine Connection gönderir ve bir XmlReader nesnesi oluşturur.

ExecuteXmlReaderAsync()

öğesine gönderen ConnectionCommandText ve bir nesnesi oluşturan zaman uyumsuz sürümü ExecuteXmlReader()XmlReader.

Özel durumlar döndürülen Görev nesnesi ile bildirilir.

ExecuteXmlReaderAsync(CancellationToken)

öğesine gönderen ConnectionCommandText ve bir nesnesi oluşturan zaman uyumsuz sürümü ExecuteXmlReader()XmlReader.

İptali belirteci, işlem komut zaman aşımı dolmadan işlemin iptal edilmesini istemek için kullanılabilir. Özel durumlar döndürülen Görev nesnesi ile bildirilir.

Prepare()

SQL Server örneğinde komutun hazırlanmış bir sürümünü oluşturur.

RegisterColumnEncryptionKeyStoreProvidersOnCommand(IDictionary<String,SqlColumnEncryptionKeyStoreProvider>)

Şifreleme anahtarı deposu sağlayıcılarını örneğe SqlCommand kaydeder. Bu işlev çağrıldıysa, veya RegisterColumnEncryptionKeyStoreProvidersOnConnection(IDictionary<String,SqlColumnEncryptionKeyStoreProvider>) yöntemleri kullanılarak RegisterColumnEncryptionKeyStoreProviders(IDictionary<String,SqlColumnEncryptionKeyStoreProvider>) kaydedilen tüm sağlayıcılar yoksayılır. Bu işlev birden çok kez çağrılabilir. Bu, uygulamanın ayarlandıktan sonra özel sağlayıcı listesini değiştirememesi için sözlüğün sığ bir şekilde kopyalanmasını yapar.

ResetCommandTimeout()

Özelliği varsayılan değerine sıfırlar CommandTimeout .

Ekinlikler

StatementCompleted

Transact-SQL deyiminin yürütülmesi tamamlandığında gerçekleşir.

Belirtik Arabirim Kullanımları

ICloneable.Clone()

SQL Server veritabanında yürütülecek transact-SQL deyimini veya saklı yordamı temsil eder. Bu sınıf devralınamaz.

Şunlara uygulanır