Partilhar via


CCommand::Open

Executa e, opcionalmente, vincula o comando.

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( );

Parâmetros

  • session
    [in] A sessão na qual executar o comando.

  • wszCommand
    [in] O comando para executar, passado como uma cadeia de caracteres Unicode.Pode ser Nulo quando CAccessor, caso em que o comando será recuperado do valor passado para o DEFINE_COMMAND macro.Consulte ICommand::Execute na OLE DB Programmer referência para obter detalhes.

  • szCommand
    [in] Mesmo que wszCommand exceto que esse parâmetro usa uma seqüência de caracteres de comando ANSI.O quarto formulário desse método pode levar um valor nulo.Consulte "Comentários" mais adiante neste tópico para obter detalhes.

  • pPropSet
    [in] Um ponteiro para uma matriz de DBPROPSET estruturas contendo propriedades e valores a ser definido.Consulte conjuntos de propriedades e grupos de propriedade na OLE DB Programmer referência no Windows SDK.

  • pRowsAffected
    [in/out] Um ponteiro de memória onde a contagem de linhas afetadas por um comando é retornada.Se * pRowsAffected é Nulo, a contagem de linhas é retornada.Caso contrário, Abrir define *pRowsAffected de acordo com para as seguintes condições:

    Se

    Então

    O cParamSets elemento de pParams for maior que 1

    *pRowsAffected representa o número total de linhas afetadas por todos os conjuntos de parâmetros especificados na execução.

    O número de linhas afetadas não está disponível

    *pRowsAffected is set to –1.

    O comando não atualizar, excluir ou inserir linhas

    *pRowsAffected é indefinido.

  • guidCommand
    [in] Um GUID que especifica a sintaxe e as regras gerais para o provedor usar na análise do texto de comando.Consulte ICommandText::GetCommandText e ICommandText::SetCommandText na OLE DB Programmer referência para obter detalhes.

  • bBind
    [in] Especifica se deve ligar o comando automaticamente depois que está sendo executado.O padrão é true, que faz com que o comando deve ser vinculada automaticamente.Definindo bBind para false impede a ligação automática do comando para que você pode vincular manualmente.(A vinculação manual é de particular interesse para os usuários do OLAP.)

  • ulPropSets
    [in] O número de DBPROPSET estruturas passaram a pPropSet argumento.

Valor de retorno

Um padrão HRESULT.

Comentários

As três primeiras formas de Abrir fazer uma sessão, criar um comando e executar o comando, todos os parâmetros de ligação conforme necessário.

O primeiro formulário do Abrir leva uma seqüência de comando Unicode e não tem valor padrão.

A segunda forma de Abrir leva uma seqüência de caracteres de comando ANSI e nenhum valor padrão (fornecida para compatibilidade com aplicativos existentes do ANSI).

A terceira forma de Abrir permite que a seqüência de comandos ser nulo, por causa do tipo int com um valor padrão NULL.Ele é fornecido para chamada Open(session, NULL); ou Open(session); porque nulo é do tipo int.Esta versão requer e declara que o int parâmetro ser NULL.

Use o formulário quarto de Abrir quando você já tiver criado um comando e deseja executar um único preparação e várias execuções.

ObservaçãoObservação

Abrir chamadas Executar, chama GetNextResult.

Requisitos

Cabeçalho: atldbcli.h

Consulte também

Referência

Classe CCommand