CommandBehavior CommandBehavior CommandBehavior CommandBehavior Enum

Definition

Stellt eine Beschreibung der Ergebnisse der Abfrage sowie ihrer Auswirkungen auf die Datenbank bereit.Provides a description of the results of the query and its effect on the database.

Diese Enumeration weist ein FlagsAttribute-Attribut auf, die eine bitweise Kombination der Memberwerte zulässt.

public enum class CommandBehavior
[System.Flags]
public enum CommandBehavior
type CommandBehavior = 
Public Enum CommandBehavior
Vererbung
CommandBehaviorCommandBehaviorCommandBehaviorCommandBehavior
Attribute

Felder

CloseConnection CloseConnection CloseConnection CloseConnection 32

Beim Ausführen des Befehls wird das zugeordnete Connection-Objekt geschlossen, wenn das zugeordnete DataReader-Objekt geschlossen wird.When the command is executed, the associated Connection object is closed when the associated DataReader object is closed.

Default Default Default Default 0

Die Abfrage kann mehrere Resultsets zurückgeben.The query may return multiple result sets. Die Ausführung der Abfrage kann sich auf den Zustand der Datenbank auswirken.Execution of the query may affect the database state. Default legt keine CommandBehavior-Flags fest, daher entspricht die Funktion eines Aufrufs von ExecuteReader(CommandBehavior.Default) dem von ExecuteReader().Default sets no CommandBehavior flags, so calling ExecuteReader(CommandBehavior.Default) is functionally equivalent to calling ExecuteReader().

KeyInfo KeyInfo KeyInfo KeyInfo 4

Die Abfrage gibt Informationen über Spalten und Primärschlüssel zurück.The query returns column and primary key information. Der Anbieter fügt dem Resultset zusätzliche Spalten für vorhandene Primärschlüssel und Zeitstempelspalten an.The provider appends extra columns to the result set for existing primary key and timestamp columns.

SchemaOnly SchemaOnly SchemaOnly SchemaOnly 2

Die Abfrage gibt nur Spalteninformationen zurück.The query returns column information only. Bei Verwendung von SchemaOnly stellt der .NET Framework-Datenanbieter für SQL Server der auszuführenden Anweisung SET FMTONLY ON voran.When using SchemaOnly, the .NET Framework Data Provider for SQL Server precedes the statement being executed with SET FMTONLY ON.

SequentialAccess SequentialAccess SequentialAccess SequentialAccess 16

Ermöglicht dem DataReader das Behandeln von Zeilen, die Spalten mit großen Binärwerten enthalten.Provides a way for the DataReader to handle rows that contain columns with large binary values. Statt des Ladens der gesamten Zeile ermöglicht SequentialAccess dem DataReader das Laden der Daten als Stream.Rather than loading the entire row, SequentialAccess enables the DataReader to load data as a stream. Anschließend können Sie mit der GetBytes-Methode oder der GetChars-Methode eine Byteposition für den Beginn des Lesevorgangs sowie eine eingeschränkte Puffergröße für die zurückgegebenen Daten angeben.You can then use the GetBytes or GetChars method to specify a byte location to start the read operation, and a limited buffer size for the data being returned.

SingleResult SingleResult SingleResult SingleResult 1

Die Abfrage gibt ein einziges Resultset zurück.The query returns a single result set.

SingleRow SingleRow SingleRow SingleRow 8

Von der Abfrage wird erwartet, dass eine einzige Zeile des ersten Resultsets zurückgegeben wird.The query is expected to return a single row of the first result set. Die Ausführung der Abfrage kann sich auf den Zustand der Datenbank auswirken.Execution of the query may affect the database state. Einige .NET Framework-Datenprovider können mit diesen Informationen die Leistung des Befehls optimieren (dies ist jedoch nicht unbedingt erforderlich).Some .NET Framework data providers may, but are not required to, use this information to optimize the performance of the command. Wenn Sie SingleRow mit der ExecuteReader()-Methode des OleDbCommand-Objekts angeben, führt der .NET Framework-Datenanbieter für OLE DB eine Bindung mithilfe der OLE DB IRow-Schnittstelle durch, sofern diese verfügbar ist.When you specify SingleRow with the ExecuteReader() method of the OleDbCommand object, the .NET Framework Data Provider for OLE DB performs binding using the OLE DB IRow interface if it is available. Andernfalls wird die IRowset-Schnittstelle verwendet.Otherwise, it uses the IRowset interface. Wenn die SQL-Anweisung nur eine einzige Zeile zurückgeben soll, kann durch Angeben von SingleRow auch die Leistung der Anwendung verbessert werden.If your SQL statement is expected to return only a single row, specifying SingleRow can also improve application performance. SingleRow kann auch beim Ausführen von Abfragen angegeben werden, die mehrere Resultsets zurückgeben können.It is possible to specify SingleRow when executing queries that are expected to return multiple result sets. In einem solchen Fall, in dem sowohl eine SQL-Abfrage für mehrere Resultsets als auch eine einzige Zeile angegeben werden, enthält das zurückgegebene Ergebnis nur die erste Zeile des ersten Resultsets.In that case, where both a multi-result set SQL query and single row are specified, the result returned will contain only the first row of the first result set. Die übrigen Resultsets der Abfrage werden nicht zurückgegeben.The other result sets of the query will not be returned.

Hinweise

Die CommandBehavior -Werte werden von der ExecuteReader -Methode IDbCommand von und allen implementierenden Klassen verwendet.The CommandBehavior values are used by the ExecuteReader method of IDbCommand and any implementing classes.

Es kann eine bitweise Kombination dieser Werte verwendet werden.A bitwise combination of these values may be used.

CommandBehaviorwird ignoriert, wenn zum Definieren SqlNotificationRequest von oder SqlDependency verwendet wird und daher nicht verwendet werden soll.CommandBehavior is ignored when used to define a SqlNotificationRequest or SqlDependency and should therefore not be used. Verwenden Sie den-Konstruktor, der in CommandBehavior diesen beiden Fällen keinen Parameter erfordert.Use the constructor that does not require a CommandBehavior parameter in these two cases.

Hinweise zu einzelnen EnumerationsmembernNotes on individual enumeration members

Wenn Sie KeyInfoverwenden, wird der .NET Framework Datenanbieter für SQL Server vor der mit SET FMTONLY OFF und ausgeführten SET NO_BROWSETABLE ON-Anweisung vorangeht.When using KeyInfo, the .NET Framework Data Provider for SQL Server precedes the statement being executed with SET FMTONLY OFF and SET NO_BROWSETABLE ON. Der Benutzer sollte mögliche Nebeneffekte erkennen, wie z. b. Störungen bei der Verwendung SET FMTONLY ON von-Anweisungen.The user should be aware of potential side effects, such as interference with the use of SET FMTONLY ON statements. Weitere Informationen finden Sie unter SET FMTONLY (Transact-SQL).For more information, see SET FMTONLY (Transact-SQL).

Hinweis

Verwenden SequentialAccess Sie, um große Werte und Binärdaten abzurufen.Use SequentialAccess to retrieve large values and binary data. Andernfalls kann eine OutOfMemoryException auftreten, und die Verbindung wird geschlossen.Otherwise, an OutOfMemoryException might occur and the connection will be closed.

Wenn Sie angeben SequentialAccess, müssen Sie die Spalten in der Reihenfolge lesen, in der Sie zurückgegeben werden, obwohl Sie nicht jede Spalte lesen müssen.When you specify SequentialAccess, you are required to read from the columns in the order they are returned, although you are not required to read each column. Nachdem Sie einen Speicherort im zurückgegebenen Datenstrom gelesen haben, können die Daten an oder vor diesem Speicherort nicht mehr aus dem DataReadergelesen werden.Once you have read past a location in the returned stream of data, data at or before that location can no longer be read from the DataReader. Wenn Sie verwenden OleDbDataReader, können Sie den aktuellen Spaltenwert erneut registrieren, bis Sie ihn lesen.When using the OleDbDataReader, you can reread the current column value until reading past it. Wenn Sie verwenden SqlDataReader, können Sie einen Spaltenwert nur einmal lesen.When using the SqlDataReader, you can read a column value only once.

Gilt für: