CommandBehavior Enumeration
Definition
Wichtig
Einige Informationen beziehen sich auf Vorabversionen, die vor dem Release ggf. grundlegend überarbeitet werden. Microsoft übernimmt hinsichtlich der hier bereitgestellten Informationen keine Gewährleistungen, seien sie ausdrücklich oder konkludent.
Stellt eine Beschreibung der Abfrageergebnisse und deren Auswirkungen auf die Datenbank bereit.
Diese Enumeration unterstützt eine bitweise Kombination ihrer Memberwerte.
public enum class CommandBehavior
[System.Flags]
public enum CommandBehavior
[<System.Flags>]
type CommandBehavior =
Public Enum CommandBehavior
- Vererbung
- Attribute
Felder
| CloseConnection | 32 | Beim Ausführen des Befehls wird das zugeordnete |
| Default | 0 | Die Abfrage kann mehrere Resultsets zurückgeben. Die Ausführung der Abfrage kann sich auf den Zustand der Datenbank auswirken. |
| KeyInfo | 4 | Die Abfrage gibt Informationen über Spalten und Primärschlüssel zurück. Der Anbieter fügt dem Resultset zusätzliche Spalten für vorhandene Primärschlüssel und Zeitstempelspalten an. |
| SchemaOnly | 2 | Die Abfrage gibt nur Spalteninformationen zurück. Bei Verwendung von SchemaOnly stellt der .NET Framework-Datenanbieter für SQL Server der auszuführenden Anweisung SET FMTONLY ON voran. |
| SequentialAccess | 16 | Ermöglicht dem |
| SingleResult | 1 | Die Abfrage gibt ein einziges Resultset zurück. |
| SingleRow | 8 | Von der Abfrage wird erwartet, dass eine einzige Zeile des ersten Resultsets zurückgegeben wird. Die Ausführung der Abfrage kann sich auf den Zustand der Datenbank auswirken. Einige .NET-Datenanbieter können mit diesen Informationen die Leistung des Befehls optimieren (dies ist jedoch nicht unbedingt erforderlich). 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 |
Hinweise
Die CommandBehavior Werte werden von der ExecuteReader Methode und IDbCommand allen Implementierungsklassen verwendet.
Eine bitweise Kombination dieser Werte kann verwendet werden.
CommandBehavior wird ignoriert, wenn sie verwendet werden, um eine SqlNotificationRequest oder zu definieren und SqlDependency sollte daher nicht verwendet werden. Verwenden Sie den Konstruktor, der keinen Parameter in diesen beiden Fällen benötigt CommandBehavior .
Notizen zu einzelnen Enumerationsmitgliedern
Bei Verwendung KeyInfowird die .NET Framework Datenanbieter für SQL Server vor der Ausführung der Anweisung mit SET FMTONLY OFF und SET NO_BROWSETABLE ON. Der Benutzer sollte sich über mögliche Nebenwirkungen bewusst sein, wie z. B. Störungen bei der Verwendung von SET FMTONLY ON Anweisungen. Weitere Informationen finden Sie unter SET FMTONLY (Transact-SQL).
Hinweis
Verwenden Sie SequentialAccess zum Abrufen großer Werte und binärer Daten. Andernfalls kann eine OutOfMemoryException Verbindung auftreten, und die Verbindung wird geschlossen.
Wenn Sie angeben SequentialAccess, müssen Sie aus den Spalten in der zurückgegebenen Reihenfolge lesen, obwohl Sie nicht erforderlich sind, jede Spalte zu lesen. Nachdem Sie einen Speicherort im zurückgegebenen Datenstrom gelesen haben, können Daten an oder vor diesem Speicherort nicht mehr aus dem DataReaderzurückgegebenen Datenstrom gelesen werden. Wenn Sie den OleDbDataReaderaktuellen Spaltenwert verwenden, können Sie den aktuellen Spaltenwert erneut lesen, bis Sie ihn lesen. Wenn Sie die SqlDataReaderVerwendung verwenden, können Sie nur einmal einen Spaltenwert lesen.