Conjuntos de filas

Un conjunto de filas es el que contiene columnas de datos. Los conjuntos de filas son objetos centrales que permiten a todos los proveedores de datos OLE DB exponer los datos del conjunto de resultados en formato tabular.

Después de que un consumidor crea una sesión utilizando el método IDBCreateSession::CreateSession, el consumidor puede utilizar la interfaz IDBCreateCommand o IOpenRowset en la sesión para crear un conjunto de filas. El proveedor OLE DB de SQL Server Native Client admite las dos interfaces. Los dos métodos se describen aquí.

  • Cree un conjunto de filas llamando al método IOpenRowset::OpenRowset.

    Esto es equivalente a crear un conjunto de filas sobre una tabla única. Este método se abre y devuelve un conjunto de filas que incluye todas las filas de una tabla base única. Uno de los argumentos de OpenRowset es un identificador de tabla que identifica la tabla de la que se va a crear el conjunto de filas.

  • Cree un objeto de comando llamando al método IDBCreateCommand::CreateCommand.

    El objeto de comando ejecuta los comandos que el proveedor admite. Con el proveedor OLE DB de SQL Server Native Client, el consumidor puede especificar cualquier instrucción Transact-SQL, como una instrucción SELECT o una llamada a un procedimiento almacenado. Los pasos para crear un conjunto de filas utilizando un objeto de comando son:

    1. El consumidor llama al método IDBCreateCommand::CreateCommand en la sesión para obtener un objeto de comando que solicita la interfaz ICommandText en el objeto de comando. Esta interfaz ICommandText establece y recupera el texto del comando real. El consumidor rellena el comando de texto llamando al método ICommandText::SetCommandText.

    2. El usuario llama al método ICommand::Execute en el comando. El objeto de conjunto de filas generado cuando se ejecuta el comando contiene el conjunto de resultados del comando.

El consumidor puede utilizar la interfaz ICommandProperties para obtener o establecer las propiedades del conjunto de filas devuelto por el comando ejecutado por las interfaces ICommand::Execute. Las propiedades solicitadas normalmente son las interfaces que el conjunto de filas debe admitir. Además de las interfaces, el consumidor puede solicitar propiedades que modifican el comportamiento del conjunto de filas o la interfaz.

Los consumidores liberan los conjuntos de filas con el método IRowset::Release. Al liberar un conjunto de filas se liberan los identificadores de fila mantenidos por el consumidor en ese conjunto de filas. Al liberar un conjunto de filas no se liberan los descriptores de acceso. Si tiene una interfaz IAccessor, todavía tiene que liberarse.