SqlCommand Classe
Definição
Importante
Algumas informações se referem a produtos de pré-lançamento que podem ser substancialmente modificados antes do lançamento. A Microsoft não oferece garantias, expressas ou implícitas, das informações aqui fornecidas.
Representa uma instrução Transact-SQL ou procedimento armazenado para execução em um banco de dados SQL Server. Essa classe não pode ser herdada.
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
- Herança
-
SqlCommand
- Implementações
Exemplos
O exemplo a seguir cria um SqlConnection, um SqlCommande um SqlDataReader. O exemplo lê os dados, gravando-os no console. Por fim, o exemplo fecha o SqlDataReader e, em seguida, o SqlConnection conforme ele sai dos Using
blocos de código.
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]));
}
}
}
}
O exemplo a seguir mostra como criar e executar diferentes tipos de objetos SqlCommand.
Primeiro, você deve criar o banco de dados de exemplo executando o seguinte script:
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
Em seguida, compile e execute o seguinte:
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");
}
}
Comentários
Quando uma instância de é criada, as propriedades de SqlCommand leitura/gravação são definidas com seus valores iniciais. Para obter uma lista desses valores, consulte o SqlCommand construtor .
SqlCommandapresenta os seguintes métodos para executar comandos em um banco de dados SQL Server:
Item | Descrição |
---|---|
BeginExecuteNonQuery | Inicia a execução assíncrona da instrução Transact-SQL ou do procedimento armazenado descrito por este SqlCommand, geralmente executando comandos como instruções INSERT, DELETE, UPDATE e SET. Cada chamada para BeginExecuteNonQuery deve ser emparelhada com uma chamada para a EndExecuteNonQuery qual conclui a operação, normalmente em um thread separado. |
BeginExecuteReader | Inicia a execução assíncrona da instrução Transact-SQL ou do procedimento armazenado descrito por ele SqlCommand e recupera um ou mais conjuntos de resultados do servidor. Cada chamada para BeginExecuteReader deve ser emparelhada com uma chamada para a EndExecuteReader qual conclui a operação, normalmente em um thread separado. |
BeginExecuteXmlReader | Inicia a execução assíncrona da instrução Transact-SQL ou procedimento armazenado que é descrito por este SqlCommand. Cada chamada para BeginExecuteXmlReader deve ser emparelhada com uma chamada para EndExecuteXmlReader , que conclui a operação, normalmente em um thread separado, e retorna um XmlReader objeto . |
ExecuteReader | Executa comandos que retornam linhas. Para aumentar o desempenho, ExecuteReader invoca comandos usando o procedimento armazenado do sistema Transact-SQL sp_executesql . Portanto, ExecuteReader pode não ter o efeito desejado se usado para executar comandos como instruções SET Transact-SQL. |
ExecuteNonQuery | Executa comandos como instruções INSERT, DELETE, UPDATE e SET do Transact-SQL. |
ExecuteScalar | Recupera um único valor (por exemplo, um valor agregado) de um banco de dados. |
ExecuteXmlReader | Envia o CommandText para o Connection e cria um objeto XmlReader. |
Você pode redefinir a CommandText propriedade e reutilizar o SqlCommand objeto. No entanto, você deve fechar o SqlDataReader antes de executar um comando novo ou anterior.
Se um SqlException for gerado pelo método que executa um SqlCommand, o SqlConnection permanecerá aberto quando o nível de severidade for 19 ou menos. Quando o nível de severidade é 20 ou maior, o servidor normalmente fecha o SqlConnection. No entanto, o usuário pode reabrir a conexão e continuar.
Observação
Parâmetros sem nome, também chamados de ordinais, não são compatíveis com o provedor de dados .NET Framework para SQL Server.
Construtores
SqlCommand() |
Inicializa uma nova instância da classe SqlCommand. |
SqlCommand(String) |
Inicializa uma nova instância da classe SqlCommand com o texto da consulta. |
SqlCommand(String, SqlConnection) |
Inicializa uma nova instância da SqlCommand classe com o texto da consulta e um SqlConnection . |
SqlCommand(String, SqlConnection, SqlTransaction) |
Inicializa uma nova instância da SqlCommand classe com o texto da consulta, um SqlConnection e o SqlTransaction . |
SqlCommand(String, SqlConnection, SqlTransaction, SqlCommandColumnEncryptionSetting) |
Inicializa uma nova instância da classe SqlCommand com texto de comando especificado, conexões, transações e configuração de criptografia. |
Propriedades
ColumnEncryptionSetting |
Obtém a configuração de criptografia de coluna para este comando. |
CommandText |
Obtém ou define a instrução Transact-SQL, nome da tabela ou procedimento armazenado a ser executado na fonte de dados. |
CommandTimeout |
Obtém ou define o tempo de espera (em segundos) antes de encerrar a tentativa de executar um comando e antes de gerar um erro. O padrão é 30 segundos. |
CommandType |
Obtém ou define um valor que indica como a propriedade CommandText deve ser interpretada. |
Connection |
Obtém ou define o SqlConnection usado por esta instância do SqlCommand . |
DesignTimeVisible |
Obtém ou define um valor que indica se o objeto de comando deve estar visível em um controle do Windows Form Designer. |
EnableOptimizedParameterBinding |
Obtém ou define um valor que indica se o objeto de comando deve otimizar o desempenho do parâmetro desabilitando as instruções Output e InputOutput ao enviar o comando para o SQL Server. |
Notification |
Obtém ou define um valor que especifica o objeto SqlNotificationRequest associado a este comando. |
NotificationAutoEnlist |
Obtém ou define um valor que indica se o aplicativo deve receber notificações de consulta automaticamente de um objeto SqlDependency comum. |
Parameters |
Obtém o SqlParameterCollection . |
RetryLogicProvider |
Obtém ou define um valor que especifica o objeto SqlRetryLogicBaseProvider associado a este comando. |
Transaction |
Obtém ou define o SqlCommand em que o SqlTransaction é executado. |
UpdatedRowSource |
Obtém ou define como os DataRow resultados do comando são aplicados ao quando usado pelo método Update do DbDataAdapter. |
Métodos
BeginExecuteNonQuery() |
Inicia a execução assíncrona da instrução Transact-SQL ou do procedimento armazenado descrito por este SqlCommand . |
BeginExecuteNonQuery(AsyncCallback, Object) |
Inicia a execução assíncrona da instrução Transact-SQL ou do procedimento armazenado descrito por este SqlCommand , considerando um procedimento de retorno de chamada e informações de estado. |
BeginExecuteReader() |
Inicia a execução assíncrona da instrução Transact-SQL ou do procedimento armazenado descrito por este SqlCommand e retorna resultados como um objeto XmlReader. |
BeginExecuteReader(AsyncCallback, Object) |
Inicia a execução assíncrona da instrução Transact-SQL ou do procedimento armazenado descrito por este SqlCommand e retorna resultados como um objeto XmlReader usando um procedimento de retorno de chamada. |
BeginExecuteReader(AsyncCallback, Object, CommandBehavior) |
Inicia a execução assíncrona da instrução Transact-SQL ou do procedimento armazenado descrito por este SqlCommand , usando um dos |
BeginExecuteReader(CommandBehavior) |
Inicia a execução assíncrona da instrução Transact-SQL ou do procedimento armazenado descrito por este SqlCommand usando um dos valores CommandBehavior. |
BeginExecuteXmlReader() |
Inicia a execução assíncrona da instrução Transact-SQL ou do procedimento armazenado descrito por este SqlCommand e retorna resultados como um objeto XmlReader. |
BeginExecuteXmlReader(AsyncCallback, Object) |
Inicia a execução assíncrona da instrução Transact-SQL ou do procedimento armazenado descrito por este SqlCommand e retorna resultados como um objeto XmlReader usando um procedimento de retorno de chamada. |
Cancel() |
Tenta cancelar a execução de um SqlCommand . |
Clone() |
Cria um novo objeto SqlCommand que é uma cópia da instância atual. |
CreateParameter() |
Cria uma nova instância de um objeto SqlParameter. |
EndExecuteNonQuery(IAsyncResult) |
Termina a execução assíncrona de uma instrução Transact-SQL. |
EndExecuteReader(IAsyncResult) |
Conclui a execução assíncrona de uma instrução Transact-SQL, retornando o solicitado SqlDataReader . |
EndExecuteXmlReader(IAsyncResult) |
Conclui a execução assíncrona de uma instrução Transact-SQL e retorna os dados solicitados como XML. |
ExecuteNonQuery() |
Executa uma instrução Transact-SQL na conexão e retorna o número de linhas afetadas. |
ExecuteNonQueryAsync(CancellationToken) |
Uma versão assíncrona do ExecuteNonQuery() , que executa uma instrução Transact-SQL na conexão e retorna o número de linhas afetadas. O token de cancelamento pode ser usado para solicitar que a operação seja abandonada antes de expirar o tempo limite do comando. As exceções serão relatadas por meio do objeto de tarefa. |
ExecuteReader() |
Envia o CommandText para o Connection e cria um SqlDataReader . |
ExecuteReader(CommandBehavior) |
Envia o CommandText para o Connection e cria um usando um SqlDataReader dos CommandBehavior valores . |
ExecuteReaderAsync() |
Uma versão assíncrona de ExecuteReader() , que envia o CommandText para o Connection e cria um SqlDataReader . As exceções serão relatadas por meio do objeto de tarefa. |
ExecuteReaderAsync(CancellationToken) |
Uma versão assíncrona de ExecuteReader() , que envia o CommandText para o Connection e cria um SqlDataReader . O token de cancelamento pode ser usado para solicitar que a operação seja abandonada antes de expirar o tempo limite do comando. As exceções serão relatadas por meio do objeto de tarefa. |
ExecuteReaderAsync(CommandBehavior) |
Uma versão assíncrona de ExecuteReader(CommandBehavior) , que envia o CommandText para o Connection e cria um SqlDataReader . As exceções serão relatadas por meio do objeto de tarefa. |
ExecuteReaderAsync(CommandBehavior, CancellationToken) |
Uma versão assíncrona de ExecuteReader(CommandBehavior) , que envia o CommandText para o Connection e cria um SqlDataReader O token de cancelamento pode ser usado para solicitar que a operação seja abandonada antes que o tempo limite do comando se desaiba. As exceções serão relatadas por meio do objeto de tarefa. |
ExecuteScalar() |
Executa a consulta e retorna a primeira coluna da primeira linha no conjunto de resultados retornado pela consulta. Colunas ou linhas adicionais são ignoradas. |
ExecuteScalarAsync(CancellationToken) |
Uma versão assíncrona de , que executa a consulta de ExecuteScalar() forma assíncrona e retorna a primeira coluna da primeira linha no conjunto de resultados retornado pela consulta. Colunas ou linhas adicionais são ignoradas. O token de cancelamento pode ser usado para solicitar que a operação seja abandonada antes de expirar o tempo limite do comando. As exceções serão relatadas por meio do objeto de tarefa. |
ExecuteXmlReader() |
Envia o CommandText para o Connection e cria um objeto XmlReader. |
ExecuteXmlReaderAsync() |
Uma versão assíncrona de ExecuteXmlReader() , que envia o CommandText para o Connection e cria um XmlReader objeto . As exceções serão relatadas por meio do objeto de tarefa. |
ExecuteXmlReaderAsync(CancellationToken) |
Uma versão assíncrona de ExecuteXmlReader() , que envia o CommandText para o Connection e cria um XmlReader objeto . O token de cancelamento pode ser usado para solicitar que a operação seja abandonada antes de expirar o tempo limite do comando. As exceções serão relatadas por meio do objeto de tarefa. |
Prepare() |
Cria uma versão preparada do comando em uma instância do SQL Server. |
RegisterColumnEncryptionKeyStoreProvidersOnCommand(IDictionary<String,SqlColumnEncryptionKeyStoreProvider>) |
Registra os provedores de repositório de chaves de criptografia na SqlCommand instância. Se essa função tiver sido chamada, todos os provedores registrados usando os RegisterColumnEncryptionKeyStoreProviders(IDictionary<String,SqlColumnEncryptionKeyStoreProvider>) métodos ou RegisterColumnEncryptionKeyStoreProvidersOnConnection(IDictionary<String,SqlColumnEncryptionKeyStoreProvider>) serão ignorados. Essa função pode ser chamada mais de uma vez. Isso faz uma cópia superficial do dicionário para que o aplicativo não possa alterar a lista de provedores personalizados depois de definido. |
ResetCommandTimeout() |
Redefine a propriedade CommandTimeout para seu valor padrão. |
Eventos
StatementCompleted |
Ocorre quando a execução de uma instrução Transact-SQL é concluída. |
Implantações explícitas de interface
ICloneable.Clone() |
Representa uma instrução Transact-SQL ou procedimento armazenado para execução em um banco de dados SQL Server. Essa classe não pode ser herdada. |