CCommand::Open

执行并选择性地将命令。

HRESULT Open(
   const CSession& session,
   LPCWSTR wszCommand,
   DBPROPSET *pPropSet = NULL,
   DBROWCOUNT* pRowsAffected = NULL,
   REFGUID guidCommand = DBGUID_DEFAULT,
   bool bBind = true,
   ULONG ulPropSets = 0
) throw( );
HRESULT Open(
   const CSession& session,
   LPCSTR szCommand,
   DBPROPSET *pPropSet = NULL,
   DBROWCOUNT* pRowsAffected = NULL,
   REFGUID guidCommand = DBGUID_DEFAULT,
   bool bBind = true,
   ULONG ulPropSets = 0
) throw( );
HRESULT Open(
   const CSession& session,
   INT szCommand = NULL,
   DBPROPSET *pPropSet = NULL,
   DBROWCOUNT* pRowsAffected = NULL,
   REFGUID guidCommand = DBGUID_DEFAULT,
   bool bBind = true,
   ULONG ulPropSets = 0
) throw( );
HRESULT Open(
   DBPROPSET *pPropSet = NULL,
   DBROWCOUNT* pRowsAffected = NULL,
   bool bBind = true,
   ULONG ulPropSets = 0
) throw( );

参数

  • session
    [] 的会话执行命令的。

  • wszCommand
    [] 命令执行,作为 Unicode 字符串。可以是 NULL ,在使用 CAccessor时,,在命令从该值将被检索传递给 DEFINE_COMMAND 宏情况下。请参见《OLE DB 程序员参考》中的 ICommand::Execute了解详细信息。

  • szCommand
    [] 和 wszCommand ,但此参数相同采用 ANSI 命令字符串。此方法的第四个窗体可以采用 null 值。再参见 “备注”本主题了解详细信息。

  • pPropSet
    [out] 一个指向数组的指针包含特性和值的 DBPROPSET 框架将设置为。请参见《OLE DB 程序员参考》中的 特性设置和属性组,在 Windows SDK。

  • pRowsAffected
    [in/out] 到命令的影响的行进行计数返回的内存的指针。如果 *pRowsAffectedNULL,没有行数返回。否则, 打开 基于以下条件设置 *pRowsAffected :

    If

    那么…

    pParams 的 cParamSets 元素大于 1

    *pRowsAffected 在执行表示任何影响的总行数参数的设置指定。

    受影响的行数不可用

    *pRowsAffected 设置为 1。

    命令不更新,不会删除或插入行

    *pRowsAffected 是未定义的。

  • guidCommand
    [out] 在分析指定语法和一般规则以提供程序可以使用命令文本的 GUID。请参见 ICommandText::GetCommandTextICommandText::SetCommandTextOLE DB programmer's reference 有关详细信息。

  • bBind
    [in] 指定是否执行后自动绑定命令。默认值为 true,导致命令自动绑定。设置为 false 的 bBind 防止命令的自动绑定,这样可以手动绑定。(准则绑定就特别值得关注对 OLAP 用户。)

  • ulPropSets
    [] DBPROPSET 结构数。 pPropSet 传递的。

返回值

标准 HRESULT

备注

打开 的前三个窗体接受会话,创建命令,并执行命令,根据需要将所有参数。

打开 的第一个窗体采用 Unicode 命令字符串并没有默认值。

打开 另一个不带 ANSI 命令字符串和默认值 (随备向后兼容现有 ANSI 应用程序)。

打开 的第三窗体允许命令字符串为 null,由于与 NULL 的默认类型 int 。,因为 NULL 的类型为 int,对 Open(session, NULL); 或 Open(session); 提供。此版本要求和断言 int 参数为 null。

请使用 打开 的第四个窗体,如果已经创建了一个命令,而您希望执行单个 准备 和多个执行。

说明说明

打开 调用 执行,然后调用 GetNextResult

要求

Header: atldbcli.h

请参见

参考

CCommand 类