SqlCommand Класс
Определение
Важно!
Некоторые сведения относятся к предварительной версии продукта, в которую до выпуска могут быть внесены существенные изменения. Майкрософт не предоставляет никаких гарантий, явных или подразумеваемых, относительно приведенных здесь сведений.
Представляет инструкцию Transact-SQL или хранимую процедуру, выполняемую над базой данных SQL Server. Этот класс не наследуется.
public ref class SqlCommand sealed : System::Data::Common::DbCommand
public ref class SqlCommand sealed : System::ComponentModel::Component, ICloneable, IDisposable, System::Data::IDbCommand
public ref class SqlCommand sealed : System::Data::Common::DbCommand, ICloneable
public sealed class SqlCommand : System.Data.Common.DbCommand
public sealed class SqlCommand : System.ComponentModel.Component, ICloneable, IDisposable, System.Data.IDbCommand
public sealed class SqlCommand : System.Data.Common.DbCommand, ICloneable
type SqlCommand = class
inherit DbCommand
type SqlCommand = class
inherit Component
interface IDbCommand
interface IDisposable
interface ICloneable
type SqlCommand = class
inherit DbCommand
interface ICloneable
Public NotInheritable Class SqlCommand
Inherits DbCommand
Public NotInheritable Class SqlCommand
Inherits Component
Implements ICloneable, IDbCommand, IDisposable
Public NotInheritable Class SqlCommand
Inherits DbCommand
Implements ICloneable
- Наследование
- Наследование
- Наследование
- Реализации
Примеры
В следующем примере создаются SqlConnection, SqlCommandи SqlDataReader. В этом примере данные считываются, записывая их в консоль. Наконец, пример закрывает SqlDataReader , а затем по SqlConnection мере выхода из Using
блоков кода.
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]));
}
}
}
}
Public Sub ReadOrderData(ByVal connectionString As String)
Dim queryString As String = _
"SELECT OrderID, CustomerID FROM dbo.Orders;"
Using connection As New SqlConnection(connectionString)
Dim command As New SqlCommand(queryString, connection)
connection.Open()
Dim reader As SqlDataReader = command.ExecuteReader()
Try
While reader.Read()
Console.WriteLine(String.Format("{0}, {1}", _
reader(0), reader(1)))
End While
Finally
' Always call Close when done reading.
reader.Close()
End Try
End Using
End Sub
В следующем примере показано, как создавать и выполнять различные типы объектов SqlCommand.
Сначала необходимо создать образец базы данных, выполнив следующий скрипт:
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
Затем скомпилируйте и выполните следующее:
using System;
using System.Data;
using System.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;Asynchronous Processing=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");
}
}
Комментарии
При создании экземпляра SqlCommand свойству чтения и записи присваиваются начальные значения. Список этих значений см. в конструкторе SqlCommand.
SqlCommandсодержит следующие методы для выполнения команд в базе данных SQL Server:
Item | Описание |
---|---|
BeginExecuteNonQuery | Инициирует асинхронное выполнение инструкции Transact-SQL или хранимой процедуры, описываемой в этом SqlCommand, обычно выполняя такие команды, как ИНСТРУКЦИи INSERT, DELETE, UPDATE и SET. Каждый вызов BeginExecuteNonQuery должен быть связан с вызовом , который EndExecuteNonQuery завершает операцию, обычно в отдельном потоке. |
BeginExecuteReader | Инициирует асинхронное выполнение инструкции Transact-SQL или хранимой процедуры, описанной в этом SqlCommand разделе, и извлекает один или несколько наборов результатов с сервера. Каждый вызов BeginExecuteReader должен быть связан с вызовом , который EndExecuteReader завершает операцию, обычно в отдельном потоке. |
BeginExecuteXmlReader | Инициирует асинхронное выполнение инструкции Transact-SQL или хранимой процедуры, определенной в данном объекте SqlCommand. Каждый вызов BeginExecuteXmlReader должен быть связан с вызовом EndExecuteXmlReader метода , который завершает операцию, обычно в отдельном потоке, и возвращает XmlReader объект . |
ExecuteReader | Выполняет команды, возвращающие строки. Для повышения производительности ExecuteReader вызывает команды с помощью системной хранимой процедуры Transact-SQL sp_executesql . Таким образом, ExecuteReader может не иметь желаемого эффекта, если используется для выполнения команд, таких как инструкции Transact-SQL SET. |
ExecuteNonQuery | Выполняет такие команды, как Transact-SQL INSERT, DELETE, UPDATE и SET. |
ExecuteScalar | Извлекает одно значение (например, статистическое значение) из базы данных. |
ExecuteXmlReader | Отправляет CommandText в Connection и строит объект XmlReader. |
Можно сбросить CommandText свойство и повторно использовать SqlCommand объект . Однако перед выполнением SqlDataReader новой или предыдущей команды необходимо закрыть .
SqlException Если создается методом, выполняющим SqlCommand, SqlConnection объект остается открытым, если уровень серьезности равен 19 или меньше. Если уровень серьезности равен 20 или выше, сервер обычно закрывает SqlConnection. Тем не менее, пользователь может опять открыть подключение и продолжить работу.
Примечание
Безымяные параметры, также называемые порядком, не поддерживаются поставщиком данных платформа .NET Framework для SQL Server.
Конструкторы
SqlCommand() |
Инициализирует новый экземпляр класса SqlCommand. |
SqlCommand(String) |
Инициализирует новый экземпляр класса SqlCommand текстом запроса. |
SqlCommand(String, SqlConnection) |
Инициализирует новый экземпляр класса SqlCommand текстом запроса и подключением SqlConnection. |
SqlCommand(String, SqlConnection, SqlTransaction) |
Инициализирует новый экземпляр класса SqlCommand текстом запроса, подключением SqlConnection и транзакцией SqlTransaction. |
SqlCommand(String, SqlConnection, SqlTransaction, SqlCommandColumnEncryptionSetting) |
Инициализирует новый экземпляр класса SqlCommand с заданными текстом команды, подключением, транзакцией и параметром шифрования. |
Свойства
CanRaiseEvents |
Возвращает значение, показывающее, может ли компонент вызывать событие. (Унаследовано от Component) |
ColumnEncryptionSetting |
Возвращает или задает параметр шифрования столбца для этой команды. |
CommandText |
Возвращает или задает инструкцию Transact-SQL, имя таблицы или хранимую процедуру, выполняемую для источника данных. |
CommandTimeout |
Возвращает или задает время ожидания (в секундах) перед прекращением попытки выполнить команду и выводом ошибки. |
CommandType |
Возвращает или задает значение, определяющее, как будет интерпретироваться свойство CommandText. |
Connection |
Возвращает или задает объект SqlConnection, используемый этим экземпляром класса SqlCommand. |
Container |
Возвращает объект IContainer, который содержит коллекцию Component. (Унаследовано от Component) |
DbConnection |
Возвращает или задает соединение DbConnection, используемое этой командой DbCommand. (Унаследовано от DbCommand) |
DbParameterCollection |
Возвращает коллекцию объектов DbParameter. (Унаследовано от DbCommand) |
DbTransaction |
Возвращает или задает контекст DbTransaction, в котором выполняется этот объект DbCommand. (Унаследовано от DbCommand) |
DesignMode |
Возвращает значение, указывающее, находится ли данный компонент Component в режиме конструктора в настоящее время. (Унаследовано от Component) |
DesignTimeVisible |
Возвращает или задает значение, указывающее, будет ли объект команды видимым в элементе управления Windows Forms Designer. |
Events |
Возвращает список обработчиков событий, которые прикреплены к этому объекту Component. (Унаследовано от Component) |
Notification |
Получает или задает значение, указывающее объект SqlNotificationRequest, связанный с данной командой. |
NotificationAutoEnlist |
Возвращает или задает значение, указывающее, должно ли приложение автоматически получать уведомления о запросах от общего объекта SqlDependency. |
Parameters |
Возвращает набор SqlParameterCollection. |
Site |
Получает или задает ISite объекта Component. (Унаследовано от Component) |
Transaction |
Возвращает или задает транзакцию SqlTransaction, в которой выполняется команда SqlCommand. |
UpdatedRowSource |
Возвращает или задает способ применения результатов команды к при DataRow использовании методом Update объекта DbDataAdapter. |
Методы
BeginExecuteNonQuery() |
Инициирует асинхронное выполнение инструкции Transact-SQL или хранимой процедуры, определенной в данном объекте SqlCommand. |
BeginExecuteNonQuery(AsyncCallback, Object) |
Инициализирует асинхронное выполнение инструкции Transact-SQL или хранимой процедуры, определенной в данном объекте SqlCommand, получая процедуру обратного вызова и данные о состоянии. |
BeginExecuteReader() |
Инициирует асинхронное выполнение инструкции или хранимой процедуры Transact-SQL, описанной в данном объекте SqlCommand, и получает от сервера один или несколько результирующих наборов. |
BeginExecuteReader(AsyncCallback, Object) |
Инициализирует асинхронное выполнение инструкции Transact-SQL или хранимой процедуры, определенной в данном объекте SqlCommand, и получает от сервера один или более результирующих наборов при наличии процедуры обратного вызова и сведений о состоянии. |
BeginExecuteReader(AsyncCallback, Object, CommandBehavior) |
Инициирует асинхронное выполнение инструкции Transact-SQL или хранимой процедуры, определенной в данном объекте SqlCommand, используя одно из значений |
BeginExecuteReader(CommandBehavior) |
Инициализирует асинхронное выполнение инструкции или хранимой процедуры Transact-SQL, описанной в данном объекте SqlCommand, с использованием одного из значений CommandBehavior. |
BeginExecuteXmlReader() |
Инициирует асинхронное выполнение инструкции Transact-SQL или хранимой процедуры, определенной в данном объекте SqlCommand, и возвращает результаты в виде объекта XmlReader. |
BeginExecuteXmlReader(AsyncCallback, Object) |
Инициирует асинхронное выполнение инструкции Transact-SQL или хранимой процедуры, определенной в данном объекте SqlCommand, и возвращает результаты в виде объекта XmlReader, используя процедуру обратного вызова. |
Cancel() |
Пытается отменить выполнение SqlCommand. |
Clone() |
Создает новый объект SqlCommand, который является копией текущего экземпляра. |
CreateDbParameter() |
Создает новый экземпляр объекта DbParameter. (Унаследовано от DbCommand) |
CreateObjRef(Type) |
Создает объект, который содержит всю необходимую информацию для создания прокси-сервера, используемого для взаимодействия с удаленным объектом. (Унаследовано от MarshalByRefObject) |
CreateParameter() |
Создает новый экземпляр объекта SqlParameter. |
Dispose() |
Выполняет определяемые приложением задачи, связанные с удалением, высвобождением или сбросом неуправляемых ресурсов. (Унаследовано от DbCommand) |
Dispose() |
Освобождает все ресурсы, занятые модулем Component. (Унаследовано от Component) |
Dispose(Boolean) |
Освобождает неуправляемые ресурсы, используемые объектом DbCommand, а при необходимости освобождает также управляемые ресурсы. (Унаследовано от DbCommand) |
Dispose(Boolean) |
Освобождает неуправляемые ресурсы, используемые объектом Component, а при необходимости освобождает также управляемые ресурсы. (Унаследовано от Component) |
DisposeAsync() |
Асинхронно размещает объект команды. (Унаследовано от DbCommand) |
EndExecuteNonQuery(IAsyncResult) |
Завершает асинхронное выполнение инструкции Transact-SQL. |
EndExecuteReader(IAsyncResult) |
Завершает асинхронное выполнение инструкции Transact-SQL, возвращающей запрошенный SqlDataReader. |
EndExecuteXmlReader(IAsyncResult) |
Завершает асинхронное выполнение инструкции Transact-SQL, возвращающей запрошенные данные в виде XML. |
Equals(Object) |
Определяет, равен ли указанный объект текущему объекту. (Унаследовано от Object) |
ExecuteDbDataReader(CommandBehavior) |
Выполняет команду для подключения, возвращая DbDataReader объект , который можно использовать для доступа к результатам. (Унаследовано от DbCommand) |
ExecuteDbDataReaderAsync(CommandBehavior, CancellationToken) |
Поставщики должны реализовать этот метод, чтобы предоставить реализацию, отличную от реализации по умолчанию, для перегрузок ExecuteReader. Реализация по умолчанию вызывает синхронный метод ExecuteReader() и возвращает завершенную задачу, блокируя вызывающий поток. Реализация по умолчанию возвращает отмененную задачу, если ей передается уже отмененный токен отмены. Исключения, создаваемые ExecuteReader, будут связаны через возвращаемое свойство исключения задачи. Этот метод принимает токен отмены, который может использоваться для запроса ранней отмены операции. Реализации могут игнорировать данный запрос. (Унаследовано от DbCommand) |
ExecuteNonQuery() |
Выполняет для подключения инструкцию Transact-SQL и возвращает количество задействованных в инструкции строк. |
ExecuteNonQueryAsync() |
Асинхронная версия ExecuteNonQuery(), которая выполняет команду для объекта соединения, возвращая количество затронутых строк. Вызывает ExecuteNonQueryAsync(CancellationToken) с CancellationToken.None. (Унаследовано от DbCommand) |
ExecuteNonQueryAsync(CancellationToken) |
Асинхронная версия ExecuteNonQuery(), которая выполняет инструкцию Transact-SQL для подключения и возвращает количество затронутых строк. Токен отмены можно использовать для запроса отказа от операции до истечения времени ожидания команды. Сведения об исключениях передаются в возвращенном объекте Task. |
ExecuteNonQueryAsync(CancellationToken) |
Это асинхронная версия метода ExecuteNonQuery(). Поставщики должны выполнить переопределение с помощью соответствующей реализации. При необходимости можно игнорировать токен отмены. Реализация по умолчанию вызывает синхронный метод ExecuteNonQuery() и возвращает завершенную задачу, блокируя вызывающий поток. Реализация по умолчанию возвращает отмененную задачу, если ей передается уже отмененный токен отмены. Исключения, создаваемые ExecuteNonQuery(), будут связаны через возвращаемое свойство исключения задачи. Не вызывайте другие методы и свойства объекта |
ExecuteReader() |
Отправляет CommandText в Connection и строит SqlDataReader. |
ExecuteReader(CommandBehavior) |
Отправляет CommandText в Connection и формирует SqlDataReader с помощью одного из значений CommandBehavior. |
ExecuteReaderAsync() |
Асинхронная версия ExecuteReader(), которая отправляет CommandText в Connection и создает SqlDataReader. Сведения об исключениях передаются в возвращенном объекте Task. |
ExecuteReaderAsync() |
Асинхронная версия ExecuteReader, которая выполняет команду для своего подключения, возвращая DbDataReader объект , который можно использовать для доступа к результатам. Вызывает ExecuteDbDataReaderAsync(CommandBehavior, CancellationToken) с CancellationToken.None. (Унаследовано от DbCommand) |
ExecuteReaderAsync(CancellationToken) |
Асинхронная версия ExecuteReader(), которая отправляет CommandText в Connection и создает SqlDataReader. Токен отмены можно использовать для запроса отказа от операции до истечения времени ожидания команды. Сведения об исключениях передаются в возвращенном объекте Task. |
ExecuteReaderAsync(CancellationToken) |
Асинхронная версия ExecuteReader, которая выполняет команду для своего подключения, возвращая DbDataReader объект , который можно использовать для доступа к результатам. Вызывает ExecuteDbDataReaderAsync(CommandBehavior, CancellationToken). (Унаследовано от DbCommand) |
ExecuteReaderAsync(CommandBehavior) |
Асинхронная версия ExecuteReader(CommandBehavior), которая отправляет CommandText в Connection и создает SqlDataReader. Сведения об исключениях передаются в возвращенном объекте Task. |
ExecuteReaderAsync(CommandBehavior) |
Асинхронная версия ExecuteReader, которая выполняет команду для своего подключения, возвращая DbDataReader объект , который можно использовать для доступа к результатам. Вызывает ExecuteDbDataReaderAsync(CommandBehavior, CancellationToken). (Унаследовано от DbCommand) |
ExecuteReaderAsync(CommandBehavior, CancellationToken) |
Асинхронная версия ExecuteReader(CommandBehavior), которая отправляет CommandText в Connection и создает SqlDataReader. Токен отмены можно использовать для запроса отказа от операции до истечения времени ожидания команды. Сведения об исключениях передаются в возвращенном объекте Task. |
ExecuteReaderAsync(CommandBehavior, CancellationToken) |
Вызывает ExecuteDbDataReaderAsync(CommandBehavior, CancellationToken). (Унаследовано от DbCommand) |
ExecuteScalar() |
Выполняет запрос и возвращает первый столбец первой строки в результирующий набор, возвращенный запросом. Такие же дополнительные столбцы также определены. |
ExecuteScalarAsync() |
Асинхронная версия ExecuteScalar(), которая выполняет команду и возвращает первый столбец первой строки в первом возвращенном результирующем наборе. Все остальные столбцы, строки и результирующие наборы игнорируются. Вызывает ExecuteScalarAsync(CancellationToken) с CancellationToken.None. (Унаследовано от DbCommand) |
ExecuteScalarAsync(CancellationToken) |
Асинхронная версия метода ExecuteScalar(), которая выполняет запрос асинхронно и возвращает первый столбец первой строки в наборе результатов, возвращаемых запросом. Такие же дополнительные столбцы также определены. Токен отмены можно использовать для запроса отказа от операции до истечения времени ожидания команды. Сведения об исключениях передаются в возвращенном объекте Task. |
ExecuteScalarAsync(CancellationToken) |
Это асинхронная версия метода ExecuteScalar(). Поставщики должны выполнить переопределение с помощью соответствующей реализации. При необходимости можно игнорировать токен отмены. Реализация по умолчанию вызывает синхронный метод ExecuteScalar() и возвращает завершенную задачу, блокируя вызывающий поток. Реализация по умолчанию возвращает отмененную задачу, если ей передается уже отмененный токен отмены. Исключения, создаваемые ExecuteScalar, будут связаны через возвращаемое свойство исключения задачи. Не вызывайте другие методы и свойства объекта |
ExecuteXmlReader() |
Отправляет CommandText в Connection и строит объект XmlReader. |
ExecuteXmlReaderAsync() |
Асинхронная версия ExecuteXmlReader(), которая отправляет CommandText в Connection и создает объект XmlReader. Сведения об исключениях передаются в возвращенном объекте Task. |
ExecuteXmlReaderAsync(CancellationToken) |
Асинхронная версия ExecuteXmlReader(), которая отправляет CommandText в Connection и создает объект XmlReader. Токен отмены можно использовать для запроса отказа от операции до истечения времени ожидания команды. Сведения об исключениях передаются в возвращенном объекте Task. |
GetHashCode() |
Служит хэш-функцией по умолчанию. (Унаследовано от Object) |
GetLifetimeService() |
Устаревшие..
Извлекает объект обслуживания во время существования, который управляет политикой времени существования данного экземпляра. (Унаследовано от MarshalByRefObject) |
GetService(Type) |
Возвращает объект, представляющий службу, предоставляемую классом Component или классом Container. (Унаследовано от Component) |
GetType() |
Возвращает объект Type для текущего экземпляра. (Унаследовано от Object) |
InitializeLifetimeService() |
Устаревшие..
Получает объект службы времени существования для управления политикой времени существования для этого экземпляра. (Унаследовано от MarshalByRefObject) |
MemberwiseClone() |
Создает неполную копию текущего объекта Object. (Унаследовано от Object) |
MemberwiseClone(Boolean) |
Создает неполную копию текущего объекта MarshalByRefObject. (Унаследовано от MarshalByRefObject) |
Prepare() |
Создает подготовленную версию команды на экземпляре SQL Server. |
PrepareAsync(CancellationToken) |
Асинхронно создает подготовленную (или скомпилированную) версию команды в источнике данных. (Унаследовано от DbCommand) |
ResetCommandTimeout() |
Восстанавливает значение по умолчанию свойства CommandTimeout. |
ToString() |
Возвращает строку, представляющую текущий объект. (Унаследовано от Object) |
ToString() |
Возвращает объект String, содержащий имя Component, если оно есть. Этот метод не следует переопределять. (Унаследовано от Component) |
События
Disposed |
Возникает при удалении компонента путем вызова метода Dispose(). (Унаследовано от Component) |
StatementCompleted |
Генерируется по завершении выполнения инструкции Transact-SQL. |
Явные реализации интерфейса
ICloneable.Clone() |
Создает новый объект SqlCommand, который является копией текущего экземпляра. |
IDbCommand.Connection |
Возвращает или задает объект IDbConnection, используемый этим экземпляром класса IDbCommand. (Унаследовано от DbCommand) |
IDbCommand.CreateParameter() |
Создает новый экземпляр объекта SqlParameter. |
IDbCommand.CreateParameter() |
Создает новый экземпляр объекта IDbDataParameter . (Унаследовано от DbCommand) |
IDbCommand.ExecuteReader() |
Отправляет свойство CommandText свойству Connection и создает SqlDataReader. |
IDbCommand.ExecuteReader() |
Выполняет CommandText применительно к объекту Connection и создает IDataReader. (Унаследовано от DbCommand) |
IDbCommand.ExecuteReader(CommandBehavior) |
Отправляет CommandText в Connection и формирует SqlDataReader с помощью одного из значений CommandBehavior. |
IDbCommand.ExecuteReader(CommandBehavior) |
Выполняет CommandText применительно к объекту Connection и создает IDataReader с помощью одного из значений CommandBehavior. (Унаследовано от DbCommand) |
IDbCommand.Parameters |
Возвращает набор IDataParameterCollection. (Унаследовано от DbCommand) |
IDbCommand.Transaction |
Возвращает или задает контекст DbTransaction, в котором выполняется этот объект DbCommand. (Унаследовано от DbCommand) |