Condividi tramite


Panoramica del provider di comunicazione remota Microsoft OLE DB

Il provider di comunicazione remota Microsoft OLE DB consente a un utente locale in un computer client di richiamare provider di dati in un computer remoto. Specificare i parametri del provider di dati per il computer remoto come si farebbe se si fosse un utente locale nel computer remoto. Specificare quindi i parametri usati dal provider di comunicazione remota per accedere al computer remoto. È quindi possibile accedere al computer remoto come se si fosse un utente locale.

Importante

A partire da Windows 8 e Windows Server 2012, i componenti del server RDS non sono più inclusi nel sistema operativo Windows (vedere Windows 8 e Windows Server 2012 Compatibility Cookbook per ulteriori dettagli). I componenti client di RDS verranno rimossi in una versione futura di Windows. Evitare di usare questa funzionalità in un nuovo progetto di sviluppo e prevedere interventi di modifica nelle applicazioni in cui è attualmente implementata. Le applicazioni che utilizzano RDS dovrebbero migrare a WCF Data Service.

Parola chiave del provider

Per richiamare il provider di comunicazione remota OLE DB, specificare la parola chiave e il valore seguenti nella stringa di connessione. Si noti lo spazio vuoto nel nome del provider.

"Provider=MS Remote"

Parole chiave aggiuntive

Quando questo provider di servizi viene richiamato, le parole chiave aggiuntive seguenti sono rilevanti.

Parola chiave Descrizione
Fonte dei dati Specifica il nome dell'origine dati remota. Viene passato al provider di comunicazione remota OLE DB per l'elaborazione.

Questa parola chiave equivale alla proprietà Connect dell'oggetto RDS.DataControl.

Proprietà dinamiche

Quando questo provider di servizi viene richiamato, le proprietà dinamiche seguenti vengono aggiunte all'insieme Properties dell'oggetto Connection.

Dynamic Property Name Descrizione
DFMode Indica la modalità DataFactory. Stringa che specifica la versione desiderata dell'oggetto DataFactory nel server. Impostare questa proprietà prima di aprire una connessione per richiedere una versione specifica di DataFactory. Se la versione richiesta non è disponibile, verrà effettuato un tentativo di usare la versione precedente. Se non è presente alcuna versione precedente, si verificherà un errore. Se DFMode è minore della versione disponibile, si verificherà un errore. Questa proprietà è di sola lettura dopo che è stata stabilita una connessione.

Può essere uno dei valori stringa validi seguenti:

- "25"-Version 2.5 (impostazione predefinita)
- "21"-Version 2.1
- "20"-Version 2.0
- "15"-Version 1.5
Proprietà dei comandi Indica i valori che verranno aggiunti alla stringa di proprietà del comando (set di righe) inviate al server dal provider ms remote. Il valore predefinito per questa stringa è vt_empty.
Modalità DF corrente Indica il numero di versione effettivo di DataFactory nel server. Controllare questa proprietà per verificare se la versione richiesta nella proprietà DFMode è stata rispettata.

Può essere uno dei valori long integer validi seguenti:

- 25 versione 2.5 (impostazione predefinita)
- 21-Versione 2.1
- 20-Versione 2.0
- 15-Versione 1.5

L'aggiunta di "DFMode=20;" alla stringa di connessione quando si usa il provider MSRemote può migliorare le prestazioni del server durante l'aggiornamento dei dati. Con questa impostazione, l'oggetto RDSServer.DataFactory nel server utilizza una modalità meno dispendiosa in termini di risorse. Tuttavia, le funzionalità seguenti non sono disponibili in questa configurazione:

- Uso di query con parametri.
- Recupero di informazioni sui parametri o sulle colonne prima di chiamare il metodo Execute .
- Impostazione degli aggiornamenti delle transazioni su True.
- Recupero dello stato della riga.
- Chiamata al metodo Resync .
- Aggiornamento (esplicito o automatico) tramite la proprietà Update Resync .
- Impostazione delle proprietà del comando o dell'oggetto Recordset .
- Uso di adCmdTableDirect.
Gestore Indica il nome di un programma di personalizzazione lato server (o gestore) che estende la funzionalità di RDSServer.DataFactory ed eventuali parametri utilizzati dal gestore, tutti separati da virgole (","). Valore string.
Internet Timeout Indica il numero massimo di millisecondi di attesa di una richiesta da e verso il server. Il valore predefinito è 5 minuti.
fornitore remoto Indica il nome del provider di dati da utilizzare nel server remoto.
server remoto Indica il nome del server e il protocollo di comunicazione da utilizzare da questa connessione. Questa proprietà è equivalente alla proprietà Server dell'oggetto RDS.DataContro.
Aggiornamenti delle transazioni Se impostato su True, questo valore indica che quando UpdateBatch viene eseguito nel server, verrà eseguito all'interno di una transazione. Il valore predefinito per questa proprietà dinamica booleana è False.

È anche possibile impostare proprietà dinamiche scrivibili specificando i relativi nomi come parole chiave nella stringa di connessione. Ad esempio, impostare la proprietà dinamica Timeout Internet su cinque secondi specificando:

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

È anche possibile impostare o recuperare una proprietà dinamica specificandone il nome come indice per la proprietà Properties . Nell'esempio seguente viene illustrato come ottenere e stampare il valore corrente della proprietà dinamica Timeout Internet e quindi impostare un nuovo valore:

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

Osservazioni:

In ADO 2.0 il provider di comunicazione remota OLE DB può essere specificato solo nel parametro ActiveConnection del metodo Open dell'oggetto Recordset. A partire da ADO 2.1, il provider può anche essere specificato nel parametro ConnectionString del metodo Open dell'oggetto Connection.

L'equivalente della proprietà SQL dell'oggetto RDS.DataControl non è disponibile. L'argomento Source del metodo Open dell'oggetto Recordset viene utilizzato invece.

Nota Specificando "...; Remote Provider=MS Remote;..." creerebbe uno scenario a quattro livelli. Gli scenari oltre i tre livelli non sono stati testati e non devono essere necessari.

Esempio

In questo esempio viene eseguita una query sulla tabella Authors del database Pubs in un server denominato YourServer. I nomi dell'origine dati remota e del server remoto vengono forniti nel metodo Open dell'oggetto Connection e la query SQL viene specificata nel metodo Open dell'oggetto Recordset . Viene restituito, modificato e utilizzato un oggetto Recordset per aggiornare l'origine dati.

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
...

Vedere anche

Panoramica del provider di comunicazione remota OLE DB