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 类