CommandBehavior 枚举

定义

提供查询结果及其对数据库的影响的说明。

此枚举支持其成员值的按位组合。

C#
[System.Flags]
public enum CommandBehavior
继承
CommandBehavior
属性

字段

名称 说明
CloseConnection 32

执行命令时,关闭关联的 DataReader 对象时,关联的 Connection 对象也会关闭。

Default 0

查询可能返回多个结果集。 执行查询可能会影响数据库状态。 Default 未设置 CommandBehavior 标志,因此调用 ExecuteReader(CommandBehavior.Default) 在功能上等效于调用 ExecuteReader()

KeyInfo 4

查询返回列和主键信息。 提供程序将额外的列附加到现有主键和时间戳列的结果集。

SchemaOnly 2

查询仅返回列信息。 使用 SchemaOnly 时,用于 SQL Server 的 .NET Framework 数据提供程序在要执行的语句前加上 SET FMTONLY ON。

SequentialAccess 16

提供一种方法,以便 DataReader 处理包含带有大型二进制值的列的行。 SequentialAccess 不是加载整行,而是使 DataReader 能够以数据流的加载数据。 然后可以使用 GetBytesGetChars 方法来指定开始读取操作的字节位置,以及正在返回的数据的有限缓冲区大小。

SingleResult 1

查询返回单个结果集。

SingleRow 8

查询应返回结果集中的单行。 执行查询可能会影响数据库状态。 某些 .NET 数据提供程序可能(但不是必需的)使用此信息来优化命令的性能。 使用 OleDbCommand 对象的 ExecuteReader() 方法指定 SingleRow 时,用于 OLE DB 的 .NET Framework 数据提供程序使用 OLE DB IRow 接口(如果可用)执行绑定。 否则,它使用 IRowset 接口。 如果期望 SQL 语句仅返回一行,则指定 SingleRow 也可提高应用程序性能。 执行应返回多个结果集的查询时,可指定 SingleRow。 在这种情况下,如果同时指定了多结果集 SQL 查询和单行,返回的结果仅包含第一个结果集的第一行。 不返回查询的其他结果集。

注解

有关此 API 的详细信息,请参阅 CommandBehavior 的补充 API 备注

适用于

产品 版本
.NET Core 1.0, Core 1.1, Core 2.0, Core 2.1, Core 2.2, Core 3.0, Core 3.1, 5, 6, 7, 8, 9
.NET Framework 1.1, 2.0, 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
.NET Standard 2.0, 2.1
UWP 10.0