Compartir a través de


Información general sobre el proveedor de comunicación remota de Microsoft OLE DB

El proveedor de comunicación remota de Microsoft OLE DB permite a un usuario local en un equipo cliente invocar proveedores de datos en un equipo remoto. Especifique los parámetros del proveedor de datos para la máquina remota como lo haría si fuera un usuario local en el equipo remoto. 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 (para obtener más información, consulte Windows 8 y la Guía de compatibilidad de Windows Server 2012, edición Cookbook). Los componentes de cliente de RDS se eliminarán en una versión futura de Windows. Evite utilizar esta característica en nuevos trabajos de desarrollo y tenga previsto modificar las aplicaciones que actualmente la utilizan. Las aplicaciones que usan RDS deben migrar al servicio de datos WCF.

Palabra clave Provider

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

"Provider=MS Remote"

Palabras clave adicionales

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

Palabra clave Descripción
Origen 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 propiedadConnect 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 Properties del objeto Connection.

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 de 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"-Versión 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.
DfMode actual Indica el número de versión real de DataFactory en el servidor. Compruebe esta propiedad para ver si se respeta 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 MSRemote puede mejorar el rendimiento del servidor al actualizar los datos. Con esta configuración, el objeto RDSServer.DataFactory del 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.
- Obtención de información de parámetros o columnas antes de llamar al método Execute.
- Establecer Transact Updates en True.
- Obtención del estado de fila.
- Llamada al método Resync.
- Actualizar (explícita o automáticamente) a través de la propiedad Actualizar resincronización.
- Establecer las propiedades Command o Recordset.
- Uso de adCmdTableDirect.
Handler Indica el nombre de un programa de personalización del lado servidor (o controlador) que extiende la funcionalidad de RDSServer.DataFactory y los parámetros usados por el controlador, todos separados por comas (","). Un valor String.
Internet Timeout Indica el número máximo de milisegundos para esperar a que una solicitud viaje hacia y desde el servidor. El valor predeterminado es ( 5 minutos).
Remote Provider Indica el nombre del proveedor de datos que se va a usar en el servidor remoto.
Remote Server Indica el nombre del servidor y el protocolo de comunicación que usará esta conexión. Esta propiedad es equivalente a la propiedad Serverdel objeto RDS.DataContro.
Transact Updates 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 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 la propiedad dinámica Tiempo de espera de Internet 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 propiedadProperties. En el ejemplo siguiente se muestra cómo obtener e imprimir el valor actual de la propiedad dinámica Tiempo de espera de Internet y, a continuación, establecer un nuevo valor:

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

Comentarios

En ADO 2.0, el proveedor de comunicación remota ole DB solo se puede 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 método Open del objeto Connection.

Equivalente de la propiedad SQL del objeto RDS.DataControl no está disponible. En su lugar se usa el argumento Source del método Open del objeto Recordset.

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 Authors de la base de datos 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 sobre el proveedor de comunicación remota de OLE DB