Compartir a través de


Introducción al proveedor de comunicación remota de Microsoft OLE DB

El proveedor de comunicación remota de Microsoft OLE DB permite a un usuario local de un equipo cliente invocar proveedores de datos en una máquina remota. Especifique los parámetros del proveedor de datos para la máquina remota como lo haría si fuera un usuario local en la máquina remota. A continuación, especifique los parámetros utilizados por el proveedor de comunicación remota para acceder a la máquina remota. A continuación, puede acceder a la máquina remota como si fuera un usuario local.

Importante

A partir de Windows 8 y Windows Server 2012, los componentes del servidor RDS ya no se incluyen en el sistema operativo Windows (consulte Windows 8 y Guía de compatibilidad de Windows Server 2012 para obtener más detalles). Los componentes de cliente de RDS se quitarán en una versión futura de Windows. Evite usar esta característica en el nuevo trabajo de desarrollo y planee modificar las aplicaciones que actualmente usan esta característica. Las aplicaciones que usan RDS deben migrar a Servicio de Datos WCF.

Proveedor Palabra clave

Para invocar el proveedor de comunicación remota de OLE DB, especifique la siguiente palabra clave y valor en la cadena de conexión. (Anote el espacio en blanco en el nombre del proveedor).

"Provider=MS Remote"

Palabras clave adicionales

Cuando se invoca a este proveedor de servicios, las siguientes palabras clave adicionales son relevantes.

Palabra clave Descripción
Fuente de datos Especifica el nombre del origen de datos remoto. Se pasa al Proveedor de Comunicación Remota OLE DB para su procesamiento.

Esta palabra clave es equivalente a la propiedad Connect del objeto RDS.DataControl.

Propiedades dinámicas

Cuando se invoca a este proveedor de servicios, se agregan las siguientes propiedades dinámicas a la colección de Propiedades del objeto de Conexión .

Nombre de propiedad dinámica Descripción
DFMode Indica el modo DataFactory. Cadena que especifica la versión deseada del objeto DataFactory en el servidor. Establezca esta propiedad antes de abrir una conexión para solicitar una versión determinada del DataFactory. Si la versión solicitada no está disponible, se intentará usar la versión anterior. Si no hay ninguna versión anterior, se producirá un error. Si DFMode es menor que la versión disponible, se producirá un error. Esta propiedad es de solo lectura después de realizar una conexión.

Puede ser uno de los siguientes valores de cadena válidos:

- "25"-Versión 2.5 (valor predeterminado)
- "21"-Versión 2.1
- "20"-Version 2.0
- "15"-Versión 1.5
Propiedades del Comando Indica los valores que se agregarán a la cadena de propiedades de comando (conjunto de filas) enviadas al servidor por el proveedor remoto de MS. El valor predeterminado de esta cadena es vt_empty.
Modo DF actual Indica el número de versión real del dataFactory en el servidor. Compruebe esta propiedad para ver si se cumplió la versión solicitada en la propiedad DFMode.

Puede ser uno de los siguientes valores enteros long válidos:

- 25 versión 2.5 (valor predeterminado)
- 21-Versión 2.1
- 20-Versión 2.0
- 15 Versión 1.5

Agregar "DFMode=20;" a la cadena de conexión al usar el proveedor de MSRemote puede mejorar el rendimiento del servidor al actualizar los datos. Con esta configuración, el objeto RDSServer.DataFactory en el servidor usa un modo menos intensivo de recursos. Sin embargo, las siguientes características no están disponibles en esta configuración:

- Uso de consultas con parámetros.
- Obtener información de parámetros o columnas antes de llamar al método Execute.
- Configurar actualizaciones de Transact a True.
- Obtención del estado de fila.
- Llamando al método Resync de.
- Actualización (explícita o automática) a través de la propiedad Update Resync.
- Configuración Comando o Registro propiedades del conjunto de registros.
- Uso de adCmdTableDirect.
controlador de Indica el nombre de un programa de personalización del lado servidor (o controlador) que extiende la funcionalidad de la RDSServer.DataFactoryy los parámetros utilizados por el controlador, todos separados por comas (","). Un valor de cadena .
tiempo de espera de Internet Indica el número máximo de milisegundos para esperar a que una solicitud viaje hacia y desde el servidor. (El valor predeterminado es de 5 minutos).
Proveedor remoto Indica el nombre del proveedor de datos que se va a usar en el servidor remoto.
servidor remoto Indica el nombre del servidor y el protocolo de comunicación que va a usar esta conexión. Esta propiedad es equivalente a la propiedad RDS.DataContro del objeto Server.
de actualizaciones de Transact Cuando se establece en True, este valor indica que cuando se realiza UpdateBatch en el servidor, se realizará dentro de una transacción. El valor predeterminado de esta propiedad dinámica booleana es False.

También puede establecer propiedades dinámicas grabables especificando sus nombres como palabras clave en la cadena de conexión. Por ejemplo, establezca el tiempo de espera de Internet propiedad dinámica en cinco segundos especificando:

Dim cn as New ADODB.Connection
cn.Open "Provider=MS Remote;Internet Timeout=5000"

También puede establecer o recuperar una propiedad dinámica especificando su nombre como índice en la propiedad Properties. En el ejemplo siguiente se muestra cómo obtener e imprimir el valor actual de la propiedad dinámica del tiempo de espera de Internet , y luego establecer un nuevo valor.

Debug.Print cn.Properties("Internet Timeout")
cn.Properties("Internet Timeout") = 5000

Observaciones

En ADO 2.0, el proveedor de comunicación remota OLE DB solo se podía especificar en el parámetro ActiveConnection del método Open del objeto Recordset. A partir de ADO 2.1, el proveedor también se puede especificar en el parámetro ConnectionString del objeto Connection del método Open.

El equivalente del objeto RDS.DataControl de la propiedad SQL no está disponible. En su lugar, se usa el objeto método OpenSource.

Nota especificar "...; Remote Provider=MS Remote;..." crearía un escenario de cuatro niveles. Los escenarios más allá de tres niveles no se han probado y no deben ser necesarios.

Ejemplo

En este ejemplo se realiza una consulta en la tabla de Authors de la base de datos de Pubs en un servidor denominado YourServer. Los nombres del origen de datos remoto y el servidor remoto se proporcionan en el método Open del objeto Connection, y la consulta SQL se especifica en el método Open del objeto Recordset. Se devuelve, edita y usa un objeto Recordset para actualizar el origen de datos.

Dim rs as New ADODB.Recordset
Dim cn as New ADODB.Connection
cn.Open  "Provider=MS Remote;Data Source=pubs;" & _
         "Remote Server=https://YourServer"
rs.Open "SELECT * FROM authors", cn
...                'Edit the recordset
rs.UpdateBatch     'Equivalent of RDS SubmitChanges
...

Consulte también

Información General del Proveedor de Comunicación Remota OLE DB