Bagikan melalui


SqlCommand Kelas

Definisi

Mewakili pernyataan Transact-SQL atau prosedur tersimpan untuk dijalankan terhadap database SQL Server. Kelas ini tidak dapat diwariskan.

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
Warisan
SqlCommand
Penerapan

Contoh

Contoh berikut membuat SqlConnection, , SqlCommanddan SqlDataReader. Contohnya membaca data, menulisnya ke konsol. Akhirnya, contoh menutup SqlDataReader dan kemudian SqlConnection saat keluar dari Using blok kode.

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]));
                    }
                }
            }
        }

Contoh berikut menunjukkan cara membuat dan menjalankan berbagai jenis objek SqlCommand.

Pertama, Anda harus membuat database sampel, dengan menjalankan skrip berikut:

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

Selanjutnya, kompilasi dan jalankan hal berikut:

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");
    }
}

Keterangan

Saat instans SqlCommand dibuat, properti baca/tulis diatur ke nilai awalnya. Untuk daftar nilai-nilai ini, lihat SqlCommand konstruktor.

SqlCommandfitur metode berikut untuk menjalankan perintah di database SQL Server:

Item Deskripsi
BeginExecuteNonQuery Memulai eksekusi asinkron dari pernyataan Transact-SQL atau prosedur tersimpan yang dijelaskan oleh ini SqlCommand, umumnya menjalankan perintah seperti pernyataan INSERT, DELETE, UPDATE, dan SET. Setiap panggilan ke BeginExecuteNonQuery harus dipasangkan dengan panggilan EndExecuteNonQuery yang menyelesaikan operasi, biasanya pada utas terpisah.
BeginExecuteReader Memulai eksekusi asinkron dari pernyataan Transact-SQL atau prosedur tersimpan yang dijelaskan oleh ini SqlCommand dan mengambil satu atau beberapa kumpulan hasil dari server. Setiap panggilan ke BeginExecuteReader harus dipasangkan dengan panggilan EndExecuteReader yang menyelesaikan operasi, biasanya pada utas terpisah.
BeginExecuteXmlReader Memulai eksekusi asinkron dari pernyataan Transact-SQL atau prosedur tersimpan yang dijelaskan oleh ini SqlCommand. Setiap panggilan ke BeginExecuteXmlReader harus dipasangkan dengan panggilan ke EndExecuteXmlReader, yang menyelesaikan operasi, biasanya pada utas XmlReader terpisah, dan mengembalikan objek.
ExecuteReader Menjalankan perintah yang mengembalikan baris. Untuk peningkatan performa, ExecuteReader panggil perintah menggunakan prosedur tersimpan sistem Transact-SQL sp_executesql . Oleh karena itu, ExecuteReader mungkin tidak memiliki efek yang Anda inginkan jika digunakan untuk menjalankan perintah seperti pernyataan T-SQL SET.
ExecuteNonQuery Menjalankan perintah seperti pernyataan Transact-SQL INSERT, DELETE, UPDATE, dan SET.
ExecuteScalar Mengambil nilai tunggal (misalnya, nilai agregat) dari database.
ExecuteXmlReader CommandText Mengirim ke Connection dan membangun XmlReader objek.

Anda dapat mengatur ulang CommandText properti dan menggunakan SqlCommand kembali objek . Namun, Anda harus menutup SqlDataReader sebelum dapat menjalankan perintah baru atau sebelumnya.

SqlException Jika dihasilkan oleh metode yang mengeksekusi SqlCommand, SqlConnection tetap terbuka ketika tingkat keparahan adalah 19 atau kurang. Ketika tingkat keparahan adalah 20 atau lebih besar, server biasanya menutup SqlConnection. Namun, pengguna dapat membuka kembali koneksi dan melanjutkan.

Catatan

Tanpa nama, juga disebut ordinal, parameter tidak didukung oleh Penyedia Data .NET Framework untuk SQL Server.

Konstruktor

SqlCommand()

Menginisialisasi instans baru kelas SqlCommand.

SqlCommand(String)

Menginisialisasi instans SqlCommand baru kelas dengan teks kueri.

SqlCommand(String, SqlConnection)

Menginisialisasi instans SqlCommand baru kelas dengan teks kueri dan SqlConnection .

SqlCommand(String, SqlConnection, SqlTransaction)

Menginisialisasi instans SqlCommand baru kelas dengan teks kueri, SqlConnection , dan SqlTransaction .

SqlCommand(String, SqlConnection, SqlTransaction, SqlCommandColumnEncryptionSetting)

Menginisialisasi instans SqlCommand baru kelas dengan teks perintah, koneksi, transaksi, dan pengaturan enkripsi yang ditentukan.

Properti

ColumnEncryptionSetting

Mendapatkan pengaturan enkripsi kolom untuk perintah ini.

CommandText

Mendapatkan atau mengatur pernyataan Transact-SQL, nama tabel, atau prosedur tersimpan untuk dijalankan di sumber data.

CommandTimeout

Mendapatkan atau mengatur waktu tunggu (dalam detik) sebelum mengakhiri upaya untuk menjalankan perintah dan menghasilkan kesalahan. Defaultnya adalah 30 detik.

CommandType

Mendapatkan atau menetapkan nilai yang menunjukkan bagaimana CommandText properti akan ditafsirkan.

Connection

Mendapatkan atau mengatur yang SqlConnection digunakan oleh instans ini dari SqlCommand .

DesignTimeVisible

Mendapatkan atau mengatur nilai yang menunjukkan apakah objek perintah harus terlihat dalam kontrol Windows Form Designer.

EnableOptimizedParameterBinding

Mendapatkan atau menetapkan nilai yang menunjukkan apakah objek perintah harus mengoptimalkan performa parameter dengan menonaktifkan arah Output dan InputOutput saat mengirimkan perintah ke SQL Server.

Notification

Mendapatkan atau mengatur nilai yang menentukan objek yang terikat ke SqlNotificationRequest perintah ini.

NotificationAutoEnlist

Mendapatkan atau menetapkan nilai yang menunjukkan apakah aplikasi harus secara otomatis menerima pemberitahuan kueri dari objek umum SqlDependency .

Parameters

SqlParameterCollection Mendapatkan .

RetryLogicProvider

Mendapatkan atau mengatur nilai yang menentukan objek yang terikat ke SqlRetryLogicBaseProvider perintah ini.

Transaction

Mendapatkan atau mengatur tempat SqlTransactionSqlCommand eksekusi.

UpdatedRowSource

Mendapatkan atau mengatur bagaimana hasil perintah diterapkan ke DataRow saat digunakan oleh metode Pembaruan dari DbDataAdapter.

Metode

BeginExecuteNonQuery()

Memulai eksekusi asinkron dari pernyataan Transact-SQL atau prosedur tersimpan yang dijelaskan oleh ini SqlCommand .

BeginExecuteNonQuery(AsyncCallback, Object)

Memulai eksekusi asinkron dari pernyataan Transact-SQL atau prosedur tersimpan yang dijelaskan oleh ini SqlCommand , mengingat prosedur panggilan balik dan informasi status.

BeginExecuteReader()

Memulai eksekusi asinkron dari pernyataan Transact-SQL atau prosedur tersimpan yang dijelaskan oleh ini SqlCommand dan mengembalikan hasil sebagai XmlReader objek.

BeginExecuteReader(AsyncCallback, Object)

Memulai eksekusi asinkron dari pernyataan Transact-SQL atau prosedur tersimpan yang dijelaskan oleh ini SqlCommand dan mengembalikan hasil sebagai XmlReader objek, menggunakan prosedur panggilan balik.

BeginExecuteReader(AsyncCallback, Object, CommandBehavior)

Memulai eksekusi asinkron dari pernyataan Transact-SQL atau prosedur tersimpan yang dijelaskan oleh ini SqlCommand , menggunakan salah satuCommandBehavior nilai, dan mengambil satu atau beberapa tataan hasil dari server, diberikan prosedur panggilan balik dan informasi status.

BeginExecuteReader(CommandBehavior)

Memulai eksekusi asinkron dari pernyataan Transact-SQL atau prosedur tersimpan yang dijelaskan oleh ini SqlCommand menggunakan salah CommandBehavior satu nilai.

BeginExecuteXmlReader()

Memulai eksekusi asinkron dari pernyataan Transact-SQL atau prosedur tersimpan yang dijelaskan oleh ini SqlCommand dan mengembalikan hasil sebagai XmlReader objek.

BeginExecuteXmlReader(AsyncCallback, Object)

Memulai eksekusi asinkron dari pernyataan Transact-SQL atau prosedur tersimpan yang dijelaskan oleh ini SqlCommand dan mengembalikan hasil sebagai XmlReader objek, menggunakan prosedur panggilan balik.

Cancel()

Mencoba membatalkan eksekusi SqlCommand .

Clone()

Membuat objek baru SqlCommand yang merupakan salinan instans saat ini.

CreateParameter()

Membuat instans SqlParameter baru objek.

EndExecuteNonQuery(IAsyncResult)

Menyelesaikan eksekusi asinkron dari pernyataan Transact-SQL.

EndExecuteReader(IAsyncResult)

Menyelesaikan eksekusi asinkron dari pernyataan Transact-SQL, mengembalikan yang diminta SqlDataReader .

EndExecuteXmlReader(IAsyncResult)

Menyelesaikan eksekusi asinkron dari pernyataan Transact-SQL, mengembalikan data yang diminta sebagai XML.

ExecuteNonQuery()

Menjalankan pernyataan Transact-SQL terhadap koneksi dan mengembalikan jumlah baris yang terpengaruh.

ExecuteNonQueryAsync(CancellationToken)

Versi asinkron dari ExecuteNonQuery() , yang menjalankan pernyataan Transact-SQL terhadap koneksi dan mengembalikan jumlah baris yang terpengaruh. Token pembatalan dapat digunakan untuk meminta agar operasi ditinggalkan sebelum batas waktu perintah berlalu. Pengecualian akan dilaporkan melalui objek Tugas yang dikembalikan.

ExecuteReader()

CommandText Mengirim ke Connection dan membangun SqlDataReader .

ExecuteReader(CommandBehavior)

CommandText Mengirim ke Connection , dan membangun SqlDataReader menggunakan salah CommandBehavior satu nilai.

ExecuteReaderAsync()

Versi asinkron dari ExecuteReader() , yang mengirimkan CommandText ke Connection dan membangun SqlDataReader . Pengecualian akan dilaporkan melalui objek Tugas yang dikembalikan.

ExecuteReaderAsync(CancellationToken)

Versi asinkron dari ExecuteReader() , yang mengirimkan CommandText ke Connection dan membangun SqlDataReader .

Token pembatalan dapat digunakan untuk meminta agar operasi ditinggalkan sebelum batas waktu perintah berlalu. Pengecualian akan dilaporkan melalui objek Tugas yang dikembalikan.

ExecuteReaderAsync(CommandBehavior)

Versi asinkron dari ExecuteReader(CommandBehavior) , yang mengirimkan CommandText ke Connection , dan membangun SqlDataReader . Pengecualian akan dilaporkan melalui objek Tugas yang dikembalikan.

ExecuteReaderAsync(CommandBehavior, CancellationToken)

Versi asinkron dari ExecuteReader(CommandBehavior) , yang mengirimkan CommandText ke Connection , dan membangun SqlDataReader Token pembatalan dapat digunakan untuk meminta agar operasi ditinggalkan sebelum batas waktu perintah berlalu. Pengecualian akan dilaporkan melalui objek Tugas yang dikembalikan.

ExecuteScalar()

Menjalankan kueri, dan mengembalikan kolom pertama dari baris pertama dalam tataan hasil yang dikembalikan oleh kueri. Kolom atau baris tambahan diabaikan.

ExecuteScalarAsync(CancellationToken)

Versi asinkron , ExecuteScalar() yang menjalankan kueri secara asinkron dan mengembalikan kolom pertama dari baris pertama dalam tataan hasil yang dikembalikan oleh kueri. Kolom atau baris tambahan diabaikan.

Token pembatalan dapat digunakan untuk meminta agar operasi ditinggalkan sebelum batas waktu perintah berlalu. Pengecualian akan dilaporkan melalui objek Tugas yang dikembalikan.

ExecuteXmlReader()

CommandText Mengirim ke Connection dan membangun XmlReader objek.

ExecuteXmlReaderAsync()

Versi asinkron dari ExecuteXmlReader() , yang mengirim CommandText ke Connection dan membangun XmlReader objek.

Pengecualian akan dilaporkan melalui objek Tugas yang dikembalikan.

ExecuteXmlReaderAsync(CancellationToken)

Versi asinkron dari ExecuteXmlReader() , yang mengirim CommandText ke Connection dan membangun XmlReader objek.

Token pembatalan dapat digunakan untuk meminta agar operasi ditinggalkan sebelum batas waktu perintah berlalu. Pengecualian akan dilaporkan melalui objek Tugas yang dikembalikan.

Prepare()

Membuat versi perintah yang disiapkan pada instans SQL Server.

RegisterColumnEncryptionKeyStoreProvidersOnCommand(IDictionary<String,SqlColumnEncryptionKeyStoreProvider>)

Mendaftarkan penyedia penyimpanan kunci enkripsi pada SqlCommand instans. Jika fungsi ini telah dipanggil, penyedia apa pun yang terdaftar menggunakan RegisterColumnEncryptionKeyStoreProviders(IDictionary<String,SqlColumnEncryptionKeyStoreProvider>) metode atau RegisterColumnEncryptionKeyStoreProvidersOnConnection(IDictionary<String,SqlColumnEncryptionKeyStoreProvider>) akan diabaikan. Fungsi ini dapat dipanggil lebih dari sekali. Ini melakukan penyalinan dangkal kamus sehingga aplikasi tidak dapat mengubah daftar penyedia kustom setelah ditetapkan.

ResetCommandTimeout()

Mereset properti ke CommandTimeout nilai defaultnya.

Acara

StatementCompleted

Terjadi ketika eksekusi pernyataan Transact-SQL selesai.

Implementasi Antarmuka Eksplisit

ICloneable.Clone()

Mewakili pernyataan Transact-SQL atau prosedur tersimpan untuk dijalankan terhadap database SQL Server. Kelas ini tidak dapat diwariskan.

Berlaku untuk