Utilizar descriptores de acceso manuales
Hay cuatro cosas que hacer al controlar un comando desconocido:
Determinar los parámetros
Ejecutar el comando
Determinar las columnas de salida
Ver si hay varios conjuntos de filas de devolución
Para hacer estas cosas con las plantillas de consumidores OLE DB, utilice la clase CManualAccessor
y siga estos pasos:
Abra un objeto
CCommand
conCManualAccessor
como parámetro de plantilla.CCommand<CManualAccessor, CRowset, CMultipleResults> rs;
Consulte la sesión de la interfaz
IDBSchemaRowset
y use el conjunto de filas de parámetros de procedimiento. Si la interfazIDBSchemaRowset
no está disponible, consulte la interfazICommandWithParameters
. Llame aGetParameterInfo
para obtener información. Si ninguna interfaz está disponible, puede suponer que no hay parámetros.Para cada parámetro, llame a
AddParameterEntry
para agregar los parámetros y establecerlos.Abra el conjunto de filas, pero establezca el parámetro bind en
false
.Llame a
GetColumnInfo
para recuperar las columnas de salida. UseAddBindEntry
para agregar la columna de salida al enlace.Llame a
GetNextResult
para determinar si hay más conjuntos de filas disponibles. Repita los pasos del 2 al 5.
Para obtener un ejemplo de un descriptor de acceso manual, consulte CDBListView::CallProcedure
en el ejemplo DBVIEWER.