Usando acessadores manuais
Há quatro coisas fazer ao tratar um comando desconhecido:
Determine os parâmetros
Execute o comando
Determina as colunas de saída
Verifique se existem vários conjuntos de linhas de retorno
Para fazer isso com os modelos do consumidor OLE DB, use a classe de CManualAccessor e siga estas etapas:
Abra um objeto de CCommand com CManualAccessor como um parâmetro do modelo.
CCommand<CManualAccessor, CRowset, CMultipleResults> rs;
Consulte a sessão para a interface de IDBSchemaRowset e use o conjunto de linhas parâmetros de procedimento. Se a interface de IDBSchemaRowset não estiver disponível, consulta para a interface de ICommandWithParameters . Chame GetParameterInfo para obter informações. Se nenhuma interface estiver disponível, você não pode assumir não há nenhum parâmetro.
Para cada parâmetro, chame AddParameterEntry para adicionar os parâmetros e para colocá-los.
Abra o conjunto de linhas mas define o parâmetro de associar a false.
Chame GetColumnInfo para recuperar as colunas de saída. Use AddBindEntry para adicionar a coluna de saída com a associação.
Chame GetNextResult para determinar se mais conjuntos de linhas estão disponíveis. Repita as etapas 2 a 5.
Para obter um exemplo de um acessador manual, consulte CDBListView::CallProcedure no exemplo de DBVIEWER .