SqlCommand Class

Definition

Stellt eine Transact-SQL-Anweisung oder eine gespeicherte Prozedur dar, die in einer SQL Server-Datenbank ausgeführt werden soll.Represents a Transact-SQL statement or stored procedure to execute against a SQL Server database. Diese Klasse kann nicht vererbt werden.This class cannot be inherited.

public ref class SqlCommand sealed : System::Data::Common::DbCommand, ICloneable
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, IDisposable
public sealed class SqlCommand : 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, IDisposable
type SqlCommand = class
    inherit DbCommand
    interface ICloneable
type SqlCommand = class
    inherit DbCommand
type SqlCommand = class
    inherit Component
    interface IDbCommand
    interface IDisposable
    interface ICloneable
type SqlCommand = class
    inherit DbCommand
    interface IDbCommand
    interface ICloneable
    interface IDisposable
Public NotInheritable Class SqlCommand
Inherits DbCommand
Implements 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, IDisposable
Inheritance
SqlCommand
Inheritance
Inheritance
Implements

Examples

Das folgende Beispiel erstellt eine SqlConnection, eine SqlCommandund eine SqlDataReader.The following example creates a SqlConnection, a SqlCommand, and a SqlDataReader. Im Beispiel werden die Daten gelesen und in die Konsole geschrieben.The example reads through the data, writing it to the console. Schließlich schließt das Beispiel die SqlDataReader und dann die SqlConnection, wenn die Using Code Blöcke beendet werden.Finally, the example closes the SqlDataReader and then the SqlConnection as it exits the Using code blocks.

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

Im folgenden Beispiel wird gezeigt, wie verschiedene Typen von SqlCommand-Objekten erstellt und ausgeführt werden.The following sample shows how to create and execute different types of SqlCommand objects.

Zuerst müssen Sie die Beispieldatenbank erstellen, indem Sie das folgende Skript ausführen:First you must create the sample database, by executing the following 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  

Kompilieren Sie als nächstes Folgendes, und führen Sie Folgendes aus:Next, compile and execute the following:

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

Remarks

Wenn eine Instanz von SqlCommand erstellt wird, werden die Lese-/Schreibeigenschaften auf ihre Anfangswerte festgelegt.When an instance of SqlCommand is created, the read/write properties are set to their initial values. Eine Liste dieser Werte finden Sie im SqlCommand-Konstruktor.For a list of these values, see the SqlCommand constructor.

SqlCommand bietet die folgenden Methoden zum Ausführen von Befehlen in einer SQL Server Datenbank:SqlCommand features the following methods for executing commands at a SQL Server database:

ElementItem BESCHREIBUNGDescription
BeginExecuteNonQuery Initiiert die asynchrone Ausführung der Transact-SQL-Anweisung oder der gespeicherten Prozedur, die von diesem SqlCommandbeschrieben wird. dabei werden in der Regel Befehle wie INSERT-, DELETE-, Update-und SET-Anweisungen ausgeführt.Initiates the asynchronous execution of the Transact-SQL statement or stored procedure that is described by this SqlCommand, generally executing commands such as INSERT, DELETE, UPDATE, and SET statements. Jeder BeginExecuteNonQuery Aufrufe muss mit einem-EndExecuteNonQuery kombiniert werden, der den Vorgang beendet, in der Regel in einem separaten Thread.Each call to BeginExecuteNonQuery must be paired with a call to EndExecuteNonQuery which finishes the operation, typically on a separate thread.
BeginExecuteReader Initiiert die asynchrone Ausführung der Transact-SQL-Anweisung oder der gespeicherten Prozedur, die von diesem SqlCommand beschrieben wird, und ruft ein oder mehrere Resultsets vom Server ab.Initiates the asynchronous execution of the Transact-SQL statement or stored procedure that is described by this SqlCommand and retrieves one or more results sets from the server. Jeder BeginExecuteReader Aufrufe muss mit einem-EndExecuteReader kombiniert werden, der den Vorgang beendet, in der Regel in einem separaten Thread.Each call to BeginExecuteReader must be paired with a call to EndExecuteReader which finishes the operation, typically on a separate thread.
BeginExecuteXmlReader Initiiert die asynchrone Ausführung der Transact-SQL-Anweisung oder der gespeicherten Prozedur, die durch diese SqlCommand beschrieben ist.Initiates the asynchronous execution of the Transact-SQL statement or stored procedure that is described by this SqlCommand. Jeder BeginExecuteXmlReader Aufrufe muss mit einem-EndExecuteXmlReaderkombiniert werden, der den Vorgang beendet, normalerweise in einem separaten Thread, und ein XmlReader-Objekt zurückgibt.Each call to BeginExecuteXmlReader must be paired with a call to EndExecuteXmlReader, which finishes the operation, typically on a separate thread, and returns an XmlReader object.
ExecuteReader Führt Befehle aus, die Zeilen zurückgeben.Executes commands that return rows. Um die Leistung zu erhöhen, ruft ExecuteReader Befehle mithilfe der gespeicherten System Prozedur Transact-SQL sp_executesql auf.For increased performance, ExecuteReader invokes commands using the Transact-SQL sp_executesql system stored procedure. Daher haben ExecuteReader möglicherweise nicht die gewünschte Auswirkung, wenn Sie zum Ausführen von Befehlen wie Transact-SQL-SET-Anweisungen verwendet werden.Therefore, ExecuteReader might not have the effect that you want if used to execute commands such as Transact-SQL SET statements.
ExecuteNonQuery Führt Befehle aus, z. b. Anweisungen zum Einfügen, löschen, aktualisieren und Festlegen von Transact-SQL.Executes commands such as Transact-SQL INSERT, DELETE, UPDATE, and SET statements.
ExecuteScalar Ruft einen einzelnen Wert (z. b. einen Aggregatwert) aus einer Datenbank ab.Retrieves a single value (for example, an aggregate value) from a database.
ExecuteXmlReader Sendet CommandText an Connection und erstellt ein XmlReader-Objekt.Sends the CommandText to the Connection and builds an XmlReader object.

Sie können die CommandText-Eigenschaft zurücksetzen und das SqlCommand-Objekt wieder verwenden.You can reset the CommandText property and reuse the SqlCommand object. Sie müssen jedoch den SqlDataReader schließen, bevor Sie einen neuen oder vorherigen Befehl ausführen können.However, you must close the SqlDataReader before you can execute a new or previous command.

Wenn ein SqlException von der Methode generiert wird, die eine SqlCommandausführt, bleibt der SqlConnection geöffnet, wenn der Schweregrad 19 oder kleiner ist.If a SqlException is generated by the method executing a SqlCommand, the SqlConnection remains open when the severity level is 19 or less. Wenn der Schweregrad 20 oder größer ist, schließt der Server normalerweise den SqlConnection.When the severity level is 20 or greater, the server ordinarily closes the SqlConnection. Die Benutzer können die Verbindung aber erneut öffnen und fortfahren.However, the user can reopen the connection and continue.

Note

Namenlos, auch als Ordinal bezeichnet, werden von der .NET Framework Datenanbieter für SQL Server nicht unterstützt.Nameless, also called ordinal, parameters are not supported by the .NET Framework Data Provider for SQL Server.

Constructors

SqlCommand()

Initialisiert eine neue Instanz der Klasse SqlCommand.Initializes a new instance of the SqlCommand class.

SqlCommand(String)

Initialisiert eine neue Instanz der SqlCommand-Klasse mit dem Text der Abfrage.Initializes a new instance of the SqlCommand class with the text of the query.

SqlCommand(String, SqlConnection)

Initialisiert eine neue Instanz der SqlCommand-Klasse mit dem Text der Abfrage und einer SqlConnection.Initializes a new instance of the SqlCommand class with the text of the query and a SqlConnection.

SqlCommand(String, SqlConnection, SqlTransaction)

Initialisiert eine neue Instanz der SqlCommand-Klasse mit dem Text der Abfrage, einer SqlConnection und der SqlTransaction.Initializes a new instance of the SqlCommand class with the text of the query, a SqlConnection, and the SqlTransaction.

SqlCommand(String, SqlConnection, SqlTransaction, SqlCommandColumnEncryptionSetting)

Initialisiert eine neue Instanz der SqlCommand-Klasse mit dem angegebenen Befehlstext sowie mit der angegebenen Verbindung, Transaktion und Verschlüsselungseinstellung.Initializes a new instance of the SqlCommand class with specified command text, connection, transaction, and encryption setting.

Properties

CanRaiseEvents

Ruft einen Wert ab, der angibt, ob die Komponente ein Ereignis auslösen kann.Gets a value indicating whether the component can raise an event.

(Inherited from Component)
ColumnEncryptionSetting

Ruft die Spaltenverschlüsselungseinstellung für diesen Befehl ab oder legt sie fest.Gets or sets the column encryption setting for this command.

CommandText

Ruft die Transact-SQL-Anweisung, den Tabellennamen oder die gespeicherte Prozedur ab, die oder der für die Datenquelle ausgeführt werden soll, oder legt diese(n) fest.Gets or sets the Transact-SQL statement, table name or stored procedure to execute at the data source.

CommandTimeout

Ruft die Zeit (in Sekunden) ab, die gewartet werden soll, bis der Versuch einer Befehlsausführung beendet und ein Fehler generiert wird, oder legt diese fest.Gets or sets the wait time (in seconds) before terminating the attempt to execute a command and generating an error.

CommandType

Ruft einen Wert ab, der angibt, wie die CommandText-Eigenschaft interpretiert werden soll, oder legt diesen Wert fest.Gets or sets a value indicating how the CommandText property is to be interpreted.

Connection

Ruft die SqlConnection ab, die von dieser Instanz des SqlCommand verwendet wird, oder legt diese fest.Gets or sets the SqlConnection used by this instance of the SqlCommand.

Container

Ruft die IContainer ab, die in der Component enthalten ist.Gets the IContainer that contains the Component.

(Inherited from Component)
DbConnection

Ruft bei Überschreibung in einer abgeleiteten Klasse die DbConnection-Eigenschaft ab, die für diesen DbCommand verwendet wird.When overridden in a derived class, gets or sets the DbConnection used by this DbCommand.

(Inherited from DbCommand)
DbParameterCollection

Ruft bei Überschreibung in einer abgeleiteten Klasse die Sammlung von DbParameter-Objekten ab.When overridden in a derived class, gets the collection of DbParameter objects.

(Inherited from DbCommand)
DbTransaction

Ruft bei Überschreibung in einer abgeleiteten Klasse die DbTransaction ab, in der dieses DbCommand-Objekt ausgeführt wird, oder legt diese Transaktion fest.When overridden in a derived class, gets or sets the DbTransaction within which this DbCommand object executes.

(Inherited from DbCommand)
DesignMode

Ruft einen Wert ab, der angibt, ob sich Component gegenwärtig im Entwurfsmodus befindet.Gets a value that indicates whether the Component is currently in design mode.

(Inherited from Component)
DesignTimeVisible

Ruft einen Wert ab bzw. legt einen Wert fest, der angibt, ob das Befehlsobjekt in einem Steuerelement für Windows Form-Designer sichtbar sein soll.Gets or sets a value indicating whether the command object should be visible in a Windows Form Designer control.

Events

Ruft die Liste der Ereignishandler ab, die dieser Component angefügt sind.Gets the list of event handlers that are attached to this Component.

(Inherited from Component)
Notification

Ruft einen Wert ab, der das SqlNotificationRequest-Objekt zu diesem Befehl angibt, oder legt diesen Wert fest.Gets or sets a value that specifies the SqlNotificationRequest object bound to this command.

NotificationAutoEnlist

Ruft einen Wert ab, der angibt, ob die Anwendung automatisch Abfragebenachrichtigungen von einem allgemeinen SqlDependency-Objekt erhalten soll, oder legt diesen fest.Gets or sets a value indicating whether the application should automatically receive query notifications from a common SqlDependency object.

Parameters

Ruft SqlParameterCollection ab.Gets the SqlParameterCollection.

Site

Ruft den ISite von Component ab oder legt ihn fest.Gets or sets the ISite of the Component.

(Inherited from Component)
Transaction

Ruft die SqlTransaction ab, in der der SqlCommand ausgeführt wird, bzw. legt diese fest.Gets or sets the SqlTransaction within which the SqlCommand executes.

UpdatedRowSource

Ruft die Methode ab bzw. legt sie fest, mit der Befehlsergebnisse auf DataRow angewendet werden, wenn sie von der Update-Methode von DbDataAdapter verwendet werden.Gets or sets how command results are applied to the DataRow when used by the Update method of the DbDataAdapter.

Methods

BeginExecuteNonQuery()

Initiiert die asynchrone Ausführung der Transact-SQL-Anweisung oder der gespeicherten Prozedur, die durch diese SqlCommand beschrieben ist.Initiates the asynchronous execution of the Transact-SQL statement or stored procedure that is described by this SqlCommand.

BeginExecuteNonQuery(AsyncCallback, Object)

Initiiert die asynchrone Ausführung der Transact-SQL-Anweisung oder der gespeicherter Prozedur, die von diesem SqlCommand beschrieben wird, wenn eine Rückrufprozedur und Zustandsinformationen verfügbar sind.Initiates the asynchronous execution of the Transact-SQL statement or stored procedure that is described by this SqlCommand, given a callback procedure and state information.

BeginExecuteReader()

Initiiert die asynchrone Ausführung der Transact-SQL-Anweisung oder der gespeicherten Prozedur, die von diesem SqlCommand beschrieben wird, und ruft ein oder mehrere Resultsets vom Server ab.Initiates the asynchronous execution of the Transact-SQL statement or stored procedure that is described by this SqlCommand, and retrieves one or more result sets from the server.

BeginExecuteReader(AsyncCallback, Object)

Initiiert die asynchrone Ausführung der Transact-SQL-Anweisung oder der gespeicherten Prozedur, die von diesem SqlCommand beschrieben wird, und ruft ein oder mehrere Resultsets vom Server ab, wenn eine Rückrufprozedur und Zustandsinformationen verfügbar sind.Initiates the asynchronous execution of the Transact-SQL statement or stored procedure that is described by this SqlCommand and retrieves one or more result sets from the server, given a callback procedure and state information.

BeginExecuteReader(AsyncCallback, Object, CommandBehavior)

Initiiert die asynchrone Ausführung der Transact-SQL-Anweisung oder der gespeicherten Prozedur, die von diesem SqlCommand beschrieben wird, wobei einer der CommandBehavior-Werte verwendet wird und ein oder mehrere Resultsets vom Server abgerufen werden, wenn eine Rückrufprozedur und Zustandsinformationen verfügbar sind.Initiates the asynchronous execution of the Transact-SQL statement or stored procedure that is described by this SqlCommand, using one of the CommandBehavior values, and retrieving one or more result sets from the server, given a callback procedure and state information.

BeginExecuteReader(CommandBehavior)

Initiiert die asynchrone Ausführung der Transact-SQL-Anweisung oder der gespeicherten Prozedur, die von diesem SqlCommand unter Verwendung eines der CommandBehavior-Werte beschrieben wird.Initiates the asynchronous execution of the Transact-SQL statement or stored procedure that is described by this SqlCommand using one of the CommandBehavior values.

BeginExecuteXmlReader()

Initiiert die asynchrone Ausführung der Transact-SQL-Anweisung oder der gespeicherten Prozedur, die von diesem SqlCommand beschrieben wird, und gibt die Ergebnisse in Form eines XmlReader-Objekts zurück.Initiates the asynchronous execution of the Transact-SQL statement or stored procedure that is described by this SqlCommand and returns results as an XmlReader object.

BeginExecuteXmlReader(AsyncCallback, Object)

Initiiert die asynchrone Ausführung der Transact-SQL-Anweisung oder der gespeicherten Prozedur, die von diesem SqlCommand beschrieben wird, und gibt mithilfe einer Rückrufprozedur die Ergebnisse in Form eines XmlReader-Objekts zurück.Initiates the asynchronous execution of the Transact-SQL statement or stored procedure that is described by this SqlCommand and returns results as an XmlReader object, using a callback procedure.

Cancel()

Versucht, die Ausführung eines SqlCommand abzubrechen.Tries to cancel the execution of a SqlCommand.

Clone()

Erstellt ein neues SqlCommand-Objekt, das eine Kopie der aktuellen Instanz darstellt.Creates a new SqlCommand object that is a copy of the current instance.

CreateDbParameter()

Erstellt bei Überschreibung in einer abgeleiteten Klasse eine neue Instanz eines DbParameter-Objekts.When overridden in a derived class, creates a new instance of a DbParameter object.

(Inherited from DbCommand)
CreateObjRef(Type)

Erstellt ein Objekt mit allen relevanten Informationen, die zum Generieren eines Proxys für die Kommunikation mit einem Remoteobjekt erforderlich sind.Creates an object that contains all the relevant information required to generate a proxy used to communicate with a remote object.

(Inherited from MarshalByRefObject)
CreateParameter()

Erstellt eine neue Instanz eines SqlParameter-Objekts.Creates a new instance of a SqlParameter object.

Dispose() (Inherited from DbCommand)
Dispose()

Gibt alle von Component verwendeten Ressourcen frei.Releases all resources used by the Component.

(Inherited from Component)
Dispose(Boolean) (Inherited from DbCommand)
Dispose(Boolean)

Gibt die von Component verwendeten nicht verwalteten Ressourcen und optional die verwalteten Ressourcen frei.Releases the unmanaged resources used by the Component and optionally releases the managed resources.

(Inherited from Component)
DisposeAsync()

Stellt das Befehlsobjekt asynchron bereit.Asynchronously diposes the command object.

(Inherited from DbCommand)
EndExecuteNonQuery(IAsyncResult)

Beendet die asynchrone Ausführung einer Transact-SQL-Anweisung.Finishes asynchronous execution of a Transact-SQL statement.

EndExecuteReader(IAsyncResult)

Beendet die asynchrone Ausführung einer Transact-SQL-Anweisung und gibt den angeforderten SqlDataReader zurück.Finishes asynchronous execution of a Transact-SQL statement, returning the requested SqlDataReader.

EndExecuteXmlReader(IAsyncResult)

Beendet die asynchrone Ausführung einer Transact-SQL-Anweisung, und gibt die angeforderten Daten als XML zurück.Finishes asynchronous execution of a Transact-SQL statement, returning the requested data as XML.

Equals(Object)

Bestimmt, ob das angegebene Objekt mit dem aktuellen Objekt identisch ist.Determines whether the specified object is equal to the current object.

(Inherited from Object)
ExecuteDbDataReader(CommandBehavior)

Führt bei Überschreibung in einer abgeleiteten Klasse den Befehlstext für die Verbindung aus.When overridden in a derived class, executes the command text against the connection.

(Inherited from DbCommand)
ExecuteDbDataReaderAsync(CommandBehavior, CancellationToken)

Anbieter sollten diese Methode implementieren, um eine nicht standardmäßige Implementierung für ExecuteReader-Überladungen bereitzustellen.Providers should implement this method to provide a non-default implementation for ExecuteReader overloads.

Die Standardimplementierung ruft die synchrone ExecuteReader()-Methode auf und gibt eine abgeschlossene Aufgabe zurück. Der aufrufende Thread wird blockiert.The default implementation invokes the synchronous ExecuteReader() method and returns a completed task, blocking the calling thread. Die Standardimplementierung gibt eine abgebrochene Aufgabe zurück, wenn sie einen bereits abgebrochenen Abbruchtoken erhalten hat.The default implementation will return a cancelled task if passed an already cancelled cancellation token. Die Ausnahmen, die von ExecuteReader ausgelöst werden, werden über die zurückgegebene Task Exception-Eigenschaft übermittelt.Exceptions thrown by ExecuteReader will be communicated via the returned Task Exception property.

Diese Methode nimmt ein Abbruchtoken an, das verwendet werden kann, um ein frühes Abbrechen des Vorgangs anzufordern.This method accepts a cancellation token that can be used to request the operation to be cancelled early. Implementierungen können diese Anforderung ignorieren.Implementations may ignore this request.

(Inherited from DbCommand)
ExecuteNonQuery()

Führt eine Transact-SQL-Anweisung für die Verbindung aus und gibt die Anzahl der betroffenen Zeilen zurück.Executes a Transact-SQL statement against the connection and returns the number of rows affected.

ExecuteNonQueryAsync()

Eine asynchrone Version von ExecuteNonQuery(), die eine SQL-Anweisung für ein Verbindungsobjekt ausführt.An asynchronous version of ExecuteNonQuery(), which executes a SQL statement against a connection object.

Ruft ExecuteNonQueryAsync(CancellationToken) mit CancellationToken.None auf.Invokes ExecuteNonQueryAsync(CancellationToken) with CancellationToken.None.

(Inherited from DbCommand)
ExecuteNonQueryAsync(CancellationToken)

Eine asynchrone Version von ExecuteNonQuery(), die eine Transact-SQLTransact-SQL-Anweisung gegen die Verbindung ausführt und die Anzahl der betroffenen Zeilen zurückgibt.An asynchronous version of ExecuteNonQuery(), which executes a Transact-SQLTransact-SQL statement against the connection and returns the number of rows affected. Das Abbruchtoken kann verwendet werden, um anzufordern, dass der Vorgang abgebrochen wird, bevor das Timeout des Befehls abläuft.The cancellation token can be used to request that the operation be abandoned before the command timeout elapses. Ausnahmen werden über das zurückgegebene Aufgabenobjekt gemeldet.Exceptions will be reported via the returned Task object.

ExecuteNonQueryAsync(CancellationToken)

Dies ist die asynchrone Version von ExecuteNonQuery().This is the asynchronous version of ExecuteNonQuery(). Anbieter sollten mit einer entsprechenden Implementierung überschreiben.Providers should override with an appropriate implementation. Das Abbruchtoken kann optional ignoriert werden.The cancellation token may optionally be ignored.

Die Standardimplementierung ruft die synchrone ExecuteNonQuery()-Methode auf und gibt eine abgeschlossene Aufgabe zurück. Der aufrufende Thread wird blockiert.The default implementation invokes the synchronous ExecuteNonQuery() method and returns a completed task, blocking the calling thread. Die Standardimplementierung gibt eine abgebrochene Aufgabe zurück, wenn sie einen bereits abgebrochenen Abbruchtoken erhalten hat.The default implementation will return a cancelled task if passed an already cancelled cancellation token. Die Ausnahmen, die von ExecuteNonQuery() ausgelöst werden, werden über die zurückgegebene Task Exception-Eigenschaft übermittelt.Exceptions thrown by ExecuteNonQuery() will be communicated via the returned Task Exception property.

Rufen Sie keine anderen Methoden und Eigenschaften des DbCommand-Objekts auf, bis die zurückgegebene Aufgabe abgeschlossen ist.Do not invoke other methods and properties of the DbCommand object until the returned Task is complete.

(Inherited from DbCommand)
ExecuteReader()

Sendet CommandText an Connection und erstellt eine SqlDataReader.Sends the CommandText to the Connection and builds a SqlDataReader.

ExecuteReader(CommandBehavior)

Sendet CommandText an Connection, und erstellt einen SqlDataReader mit einem der CommandBehavior-Werte.Sends the CommandText to the Connection, and builds a SqlDataReader using one of the CommandBehavior values.

ExecuteReaderAsync()

Eine asynchrone Version von ExecuteReader(), die den CommandText an die Connection sendet, und einen SqlDataReader erstellt.An asynchronous version of ExecuteReader(), which sends the CommandText to the Connection and builds a SqlDataReader. Ausnahmen werden über das zurückgegebene Aufgabenobjekt gemeldet.Exceptions will be reported via the returned Task object.

ExecuteReaderAsync()

Eine asynchrone Version von ExecuteReader, die CommandText gegen Connection ausführt und DbDataReader zurückgibt.An asynchronous version of ExecuteReader, which executes the CommandText against the Connection and returns a DbDataReader.

Ruft ExecuteDbDataReaderAsync(CommandBehavior, CancellationToken) mit CancellationToken.None auf.Invokes ExecuteDbDataReaderAsync(CommandBehavior, CancellationToken) with CancellationToken.None.

(Inherited from DbCommand)
ExecuteReaderAsync(CancellationToken)

Eine asynchrone Version von ExecuteReader(), die den CommandText an die Connection sendet, und einen SqlDataReader erstellt.An asynchronous version of ExecuteReader(), which sends the CommandText to the Connection and builds a SqlDataReader.

Das Abbruchtoken kann verwendet werden, um anzufordern, dass der Vorgang abgebrochen wird, bevor das Timeout des Befehls abläuft.The cancellation token can be used to request that the operation be abandoned before the command timeout elapses. Ausnahmen werden über das zurückgegebene Aufgabenobjekt gemeldet.Exceptions will be reported via the returned Task object.

ExecuteReaderAsync(CancellationToken)

Eine asynchrone Version von ExecuteReader, die CommandText gegen Connection ausführt und DbDataReader zurückgibt.An asynchronous version of ExecuteReader, which executes the CommandText against the Connection and returns a DbDataReader. Diese Methode gibt eine Benachrichtigung darüber weiter, dass Vorgänge abgebrochen werden sollen.This method propagates a notification that operations should be canceled.

Ruft ExecuteDbDataReaderAsync(CommandBehavior, CancellationToken) auf.Invokes ExecuteDbDataReaderAsync(CommandBehavior, CancellationToken).

(Inherited from DbCommand)
ExecuteReaderAsync(CommandBehavior)

Eine asynchrone Version von ExecuteReader(CommandBehavior), die den CommandText an die Connection sendet, und einen SqlDataReader erstellt.An asynchronous version of ExecuteReader(CommandBehavior), which sends the CommandText to the Connection, and builds a SqlDataReader. Ausnahmen werden über das zurückgegebene Aufgabenobjekt gemeldet.Exceptions will be reported via the returned Task object.

ExecuteReaderAsync(CommandBehavior)

Eine asynchrone Version von ExecuteReader, die CommandText gegen Connection ausführt und DbDataReader zurückgibt.An asynchronous version of ExecuteReader, which executes the CommandText against the Connection and returns a DbDataReader.

Ruft ExecuteDbDataReaderAsync(CommandBehavior, CancellationToken) auf.Invokes ExecuteDbDataReaderAsync(CommandBehavior, CancellationToken).

(Inherited from DbCommand)
ExecuteReaderAsync(CommandBehavior, CancellationToken)

Eine asynchrone Version von ExecuteReader(CommandBehavior), die den CommandText an die Connection sendet, und einen SqlDataReader erstellt.An asynchronous version of ExecuteReader(CommandBehavior), which sends the CommandText to the Connection, and builds a SqlDataReader

Das Abbruchtoken kann verwendet werden, um anzufordern, dass der Vorgang abgebrochen wird, bevor das Timeout des Befehls abläuft.The cancellation token can be used to request that the operation be abandoned before the command timeout elapses. Ausnahmen werden über das zurückgegebene Aufgabenobjekt gemeldet.Exceptions will be reported via the returned Task object.

ExecuteReaderAsync(CommandBehavior, CancellationToken)

Ruft ExecuteDbDataReaderAsync(CommandBehavior, CancellationToken) auf.Invokes ExecuteDbDataReaderAsync(CommandBehavior, CancellationToken).

(Inherited from DbCommand)
ExecuteScalar()

Führt die Abfrage aus und gibt die erste Spalte der ersten Zeile in dem von der Abfrage zurückgegebenen Resultset zurück.Executes the query, and returns the first column of the first row in the result set returned by the query. Weitere Spalten oder Zeilen werden ignoriert.Additional columns or rows are ignored.

ExecuteScalarAsync()

Eine asynchrone Version von ExecuteScalar(), die die Abfrage ausführt und die erste Spalte der ersten Zeile im Resultset zurückgibt.An asynchronous version of ExecuteScalar(), which executes the query and returns the first column of the first row in the result set returned by the query. Alle anderen Spalten und Zeilen werden ignoriert.All other columns and rows are ignored.

Ruft ExecuteScalarAsync(CancellationToken) mit CancellationToken.None auf.Invokes ExecuteScalarAsync(CancellationToken) with CancellationToken.None.

(Inherited from DbCommand)
ExecuteScalarAsync(CancellationToken)

Eine asynchrone Version von ExecuteScalar(), die die Abfrage asynchron ausführt und die erste Spalte der ersten Zeile in dem von der Abfrage zurückgegebenen Resultset zurückgibt.An asynchronous version of ExecuteScalar(), which executes the query asynchronously and returns the first column of the first row in the result set returned by the query. Weitere Spalten oder Zeilen werden ignoriert.Additional columns or rows are ignored.

Das Abbruchtoken kann verwendet werden, um anzufordern, dass der Vorgang abgebrochen wird, bevor das Timeout des Befehls abläuft.The cancellation token can be used to request that the operation be abandoned before the command timeout elapses. Ausnahmen werden über das zurückgegebene Aufgabenobjekt gemeldet.Exceptions will be reported via the returned Task object.

ExecuteScalarAsync(CancellationToken)

Dies ist die asynchrone Version von ExecuteScalar().This is the asynchronous version of ExecuteScalar(). Anbieter sollten mit einer entsprechenden Implementierung überschreiben.Providers should override with an appropriate implementation. Das Abbruchtoken kann optional ignoriert werden.The cancellation token may optionally be ignored.

Die Standardimplementierung ruft die synchrone ExecuteScalar()-Methode auf und gibt eine abgeschlossene Aufgabe zurück. Der aufrufende Thread wird blockiert.The default implementation invokes the synchronous ExecuteScalar() method and returns a completed task, blocking the calling thread. Die Standardimplementierung gibt eine abgebrochene Aufgabe zurück, wenn sie einen bereits abgebrochenen Abbruchtoken erhalten hat.The default implementation will return a cancelled task if passed an already cancelled cancellation token. Die Ausnahmen, die von ExecuteReader ausgelöst werden, werden über die zurückgegebene Task Exception-Eigenschaft übermittelt.Exceptions thrown by ExecuteScalar will be communicated via the returned Task Exception property.

Rufen Sie keine anderen Methoden und Eigenschaften des DbCommand-Objekts auf, bis die zurückgegebene Aufgabe abgeschlossen ist.Do not invoke other methods and properties of the DbCommand object until the returned Task is complete.

(Inherited from DbCommand)
ExecuteXmlReader()

Sendet CommandText an Connection und erstellt ein XmlReader-Objekt.Sends the CommandText to the Connection and builds an XmlReader object.

ExecuteXmlReaderAsync()

Eine asynchrone Version von ExecuteXmlReader(), die CommandText zu Connection sendet, und ein XmlReader-Objekt erstellt.An asynchronous version of ExecuteXmlReader(), which sends the CommandText to the Connection and builds an XmlReader object.

Ausnahmen werden über das zurückgegebene Aufgabenobjekt gemeldet.Exceptions will be reported via the returned Task object.

ExecuteXmlReaderAsync(CancellationToken)

Eine asynchrone Version von ExecuteXmlReader(), die CommandText zu Connection sendet, und ein XmlReader-Objekt erstellt.An asynchronous version of ExecuteXmlReader(), which sends the CommandText to the Connection and builds an XmlReader object.

Das Abbruchtoken kann verwendet werden, um anzufordern, dass der Vorgang abgebrochen wird, bevor das Timeout des Befehls abläuft.The cancellation token can be used to request that the operation be abandoned before the command timeout elapses. Ausnahmen werden über das zurückgegebene Aufgabenobjekt gemeldet.Exceptions will be reported via the returned Task object.

GetHashCode()

Fungiert als Standardhashfunktion.Serves as the default hash function.

(Inherited from Object)
GetLifetimeService()

Ruft das aktuelle Lebensdauerdienstobjekt ab, das die Lebensdauerrichtlinien für diese Instanz steuert.Retrieves the current lifetime service object that controls the lifetime policy for this instance.

(Inherited from MarshalByRefObject)
GetService(Type)

Gibt ein Objekt zurück, das einen von der Component oder von deren Container bereitgestellten Dienst darstellt.Returns an object that represents a service provided by the Component or by its Container.

(Inherited from Component)
GetType()

Ruft den Type der aktuellen Instanz ab.Gets the Type of the current instance.

(Inherited from Object)
InitializeLifetimeService()

Ruft ein Lebensdauerdienstobjekt zur Steuerung der Lebensdauerrichtlinie für diese Instanz ab.Obtains a lifetime service object to control the lifetime policy for this instance.

(Inherited from MarshalByRefObject)
MemberwiseClone()

Erstellt eine flache Kopie des aktuellen Object.Creates a shallow copy of the current Object.

(Inherited from Object)
MemberwiseClone(Boolean)

Erstellt eine flache Kopie des aktuellen MarshalByRefObject-Objekts.Creates a shallow copy of the current MarshalByRefObject object.

(Inherited from MarshalByRefObject)
Prepare()

Erstellt eine vorbereitete Version des Befehls in einer Instanz von SQL Server.Creates a prepared version of the command on an instance of SQL Server.

PrepareAsync(CancellationToken)

Erstellt asynchron eine vorbereitete (oder kompilierte) Version des Befehls für die Datenquelle.Asynchronously creates a prepared (or compiled) version of the command on the data source.

(Inherited from DbCommand)
ResetCommandTimeout()

Setzt die CommandTimeout-Eigenschaft auf den Standardwert zurück.Resets the CommandTimeout property to its default value.

ToString()

Gibt eine Zeichenfolge zurück, die das aktuelle Objekt darstellt.Returns a string that represents the current object.

(Inherited from Object)
ToString()

Gibt einen String zurück, der den Namen der Component enthält (sofern vorhanden).Returns a String containing the name of the Component, if any. Diese Methode darf nicht überschrieben werden.This method should not be overridden.

(Inherited from Component)

Events

Disposed

Tritt auf, wenn die Komponente von einem Aufruf der Dispose()-Methode verworfen wird.Occurs when the component is disposed by a call to the Dispose() method.

(Inherited from Component)
StatementCompleted

Tritt auf, wenn die Ausführung einer Transact-SQL-Anweisung abgeschlossen wurde.Occurs when the execution of a Transact-SQL statement completes.

Explicit Interface Implementations

ICloneable.Clone()

Erstellt ein neues SqlCommand-Objekt, das eine Kopie der aktuellen Instanz darstellt.Creates a new SqlCommand object that is a copy of the current instance.

IDbCommand.Connection

Ruft die IDbConnection ab, die von dieser Instanz des IDbCommand verwendet wird, oder legt diese fest.Gets or sets the IDbConnection used by this instance of the IDbCommand.

(Inherited from DbCommand)
IDbCommand.CreateParameter()

Erstellt eine neue Instanz eines SqlParameter-Objekts.Creates a new instance of a SqlParameter object.

IDbCommand.CreateParameter()

Erstellt eine neue Instanz eines IDbDataParameter-Objekts.Creates a new instance of an IDbDataParameter object.

(Inherited from DbCommand)
IDbCommand.ExecuteReader()

Sendet den CommandText an die Connection und erstellt eine SqlDataReader-Klasse.Sends the CommandText to the Connection, and builds a SqlDataReader.

IDbCommand.ExecuteReader()

Führt den CommandText für die Connection aus und erstellt einen IDataReader.Executes the CommandText against the Connection and builds an IDataReader.

(Inherited from DbCommand)
IDbCommand.ExecuteReader(CommandBehavior)

Sendet CommandText an Connection, und erstellt einen SqlDataReader mit einem der CommandBehavior-Werte.Sends the CommandText to the Connection, and builds a SqlDataReader using one of the CommandBehavior values.

IDbCommand.ExecuteReader(CommandBehavior)

Führt den CommandText für die Connection aus und erstellt einen IDataReader mithilfe eines der CommandBehavior-Werte.Executes the CommandText against the Connection, and builds an IDataReader using one of the CommandBehavior values.

(Inherited from DbCommand)
IDbCommand.Parameters

Ruft IDataParameterCollection ab.Gets the IDataParameterCollection.

(Inherited from DbCommand)
IDbCommand.Transaction

Ruft die DbTransaction ab, in der dieses DbCommand-Objekt ausgeführt wird, oder legt sie fest.Gets or sets the DbTransaction within which this DbCommand object executes.

(Inherited from DbCommand)

Applies to

See also