CommandBehavior CommandBehavior CommandBehavior CommandBehavior Enum

Определение

Содержит описание результатов запроса и его воздействия на базу данных.Provides a description of the results of the query and its effect on the database.

Это перечисление имеет атрибут FlagsAttribute, который разрешает побитовое сочетание значений его элементов.

public enum class CommandBehavior
[System.Flags]
public enum CommandBehavior
type CommandBehavior = 
Public Enum CommandBehavior
Наследование
CommandBehaviorCommandBehaviorCommandBehaviorCommandBehavior
Атрибуты

Поля

CloseConnection CloseConnection CloseConnection CloseConnection 32

При выполнении этой команды связанный объект Connection закрывается, когда закрывается связанный объект DataReader.When the command is executed, the associated Connection object is closed when the associated DataReader object is closed.

Default Default Default Default 0

Запрос может вернуть несколько наборов результатов.The query may return multiple result sets. Выполнение запроса может повлиять на состояние базы данных.Execution of the query may affect the database state. Поле Default не задает флаги CommandBehavior, поэтому вызов метода ExecuteReader(CommandBehavior.Default) функционально эквивалентен вызову метода ExecuteReader().Default sets no CommandBehavior flags, so calling ExecuteReader(CommandBehavior.Default) is functionally equivalent to calling ExecuteReader().

KeyInfo KeyInfo KeyInfo KeyInfo 4

Запрос возвращает информацию колонки и первичного ключа.The query returns column and primary key information. Поставщик добавляет дополнительные столбцы в результирующий набор для существующего первичного ключа и столбцы меток времени.The provider appends extra columns to the result set for existing primary key and timestamp columns.

SchemaOnly SchemaOnly SchemaOnly SchemaOnly 2

Запрос возвращает только сведения о столбце.The query returns column information only. При использовании SchemaOnly поставщик данных .NET Framework для SQL Server предваряет оператор, выполняемый с параметром SET FMTONLY ON.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

Содержит способ для DataReader для обработки строк, содержащих столбцы с большими двоичными значениями.Provides a way for the DataReader to handle rows that contain columns with large binary values. Вместо загрузки всей строки, SequentialAccess позволяет DataReader загрузить данные как поток.Rather than loading the entire row, SequentialAccess enables the DataReader to load data as a stream. Затем можно использовать метод GetBytes или метод GetChars, чтобы указать положение байта для начала операции чтения и ограниченный размер буфера для возврата данных.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

Запрос возвращает один набор результатов.The query returns a single result set.

SingleRow SingleRow SingleRow SingleRow 8

Ожидается, что запрос вернет одну строку из первого набора результатов.The query is expected to return a single row of the first result set. Выполнение запроса может повлиять на состояние базы данных.Execution of the query may affect the database state. Некоторые поставщики данных .NET Framework могут, но не обязательно, использовать эту информацию для оптимизации производительности команды.Some .NET Framework data providers may, but are not required to, use this information to optimize the performance of the command. При указании SingleRow с методом ExecuteReader() объекта OleDbCommand, поставщик данных .NET Framework для OLE DB выполняет привязку с помощью интерфейса IRow OLE DB, если он доступен.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. В обратном случае, используется интерфейс IRowset.Otherwise, it uses the IRowset interface. Если оператор SQL должен вернуть только одну строку, рекомендуется указать SingleRow для повышения производительности приложения.If your SQL statement is expected to return only a single row, specifying SingleRow can also improve application performance. Можно также указать SingleRow при выполнении запросов, которые должны возвращать несколько наборов результатов.It is possible to specify SingleRow when executing queries that are expected to return multiple result sets. В этом случае, если заданы и SQL-запрос с несколькими наборами результатом, и одна строка, возвращаемый результат будет содержать только первую строку первого набора результатов.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. Другие наборы результатов запроса не возвращаются.The other result sets of the query will not be returned.

Комментарии

Значения используются ExecuteReader методомIDbCommand и любыми реализующими классами. CommandBehaviorThe CommandBehavior values are used by the ExecuteReader method of IDbCommand and any implementing classes.

Можно использовать побитовое сочетание этих значений.A bitwise combination of these values may be used.

CommandBehaviorне учитывается, если используется для SqlNotificationRequest определения SqlDependency или, поэтому не следует использовать.CommandBehavior is ignored when used to define a SqlNotificationRequest or SqlDependency and should therefore not be used. Используйте конструктор, который не требует CommandBehavior параметра в этих двух случаях.Use the constructor that does not require a CommandBehavior parameter in these two cases.

Примечания к отдельным элементам перечисленияNotes on individual enumeration members

При использовании KeyInfo.NET Framework поставщик данных для SQL Server перед оператором, выполняемым с SET FMTONLY OFF и SET NO_BROWSETABLE ON.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. Пользователю следует знать о возможных побочных эффектах, например о помехах при использовании SET FMTONLY ON инструкций.The user should be aware of potential side effects, such as interference with the use of SET FMTONLY ON statements. Дополнительные сведения см. в разделе SET FMTONLY (Transact-SQL).For more information, see SET FMTONLY (Transact-SQL).

Примечание

Используется SequentialAccess для получения больших значений и двоичных данных.Use SequentialAccess to retrieve large values and binary data. В противном OutOfMemoryException случае может возникнуть ошибка, и соединение будет закрыто.Otherwise, an OutOfMemoryException might occur and the connection will be closed.

При указании SequentialAccessнеобходимо считывать из столбцов в том порядке, в котором они возвращаются, хотя чтение каждого столбца не требуется.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. После того как вы прочитаете позицию в возвращенном потоке данных, данные в этом расположении больше не могут быть считаны из DataReader.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. При использовании можно OleDbDataReaderповторно прочитать значение текущего столбца до тех пор, пока не будет выполнено его считывание.When using the OleDbDataReader, you can reread the current column value until reading past it. При использовании SqlDataReaderможно считать значение столбца только один раз.When using the SqlDataReader, you can read a column value only once.

Применяется к