URL relativi e assoluti

Un URL specifica la posizione di una destinazione archiviata in un computer locale o in rete. La destinazione può essere un file, una directory, una pagina HTML, un'immagine, un programma e così via.

Un URL assoluto contiene tutte le informazioni necessarie per individuare una risorsa.

Un URL relativo individua una risorsa usando un URL assoluto come punto di partenza. In effetti, l'"URL completo" della destinazione viene specificato concatenando gli URL assoluti e relativi.

Un URL assoluto usa il formato seguente: schema://server/percorso/risorsa

Un URL relativo è in genere costituito solo dal percorso e, facoltativamente, dalla risorsa, ma non da uno schema o da un server. Le tabelle seguenti definiscono le singole parti del formato URL completo.

scheme
Specifica la modalità di accesso alla risorsa.

server
Specifica il nome del computer su cui si trova la risorsa.

path
Specifica la sequenza di directory che porta alla destinazione. Se la risorsa viene omessa, la destinazione è l'ultima directory del percorso.

resource
Se inclusa, la risorsa è la destinazione ed è in genere il nome di un file. Può trattarsi di un semplice file, contenente un singolo flusso binario di byte o un documento strutturato, contenente una o più risorse di archiviazione e uno o più flussi binari di byte.

Registrazione dello schema dell'URL

Se un provider supporta gli URL, il provider registrerà uno o più schemi dell'URL. La registrazione indica che tutti gli URL che usano lo schema richiameranno automaticamente il provider registrato. Ad esempio, lo schema http viene registrato nel provider Microsoft OLE DB per Internet Publishing. ADO presuppone che tutti gli URL con prefisso "http" rappresentino cartelle o file Web da usare con il provider di Internet Publishing. Per informazioni sugli schemi registrati dal provider, vedere la documentazione del provider.

Definizione del contesto con un URL

Una funzione di una connessione aperta, rappresentata da un oggetto Connection, consiste nel limitare le operazioni successive nell'origine dati rappresentata da tale connessione. Ovvero, la connessione definisce il contesto per le operazioni successive.

Con ADO 2.7 o versione successiva, un URL assoluto può anche definire un contesto. Ad esempio, quando un oggetto Record viene aperto con un URL assoluto, viene creato in modo implicito un oggetto Connection per rappresentare la risorsa specificata dall'URL.

Un URL assoluto che definisce un contesto può essere specificato nel parametro ActiveConnection del metodo Open dell'oggetto Record. È anche possibile specificare un URL assoluto come valore della parola chiave "URL=" nel parametro ConnectionString del metodo Open dell'oggetto Connection e nel parametro ActiveConnection del metodo Open dell'oggetto Recordset.

Il contesto può essere definito anche aprendo un oggetto Record o Recordset che rappresenta una directory, perché questi oggetti hanno già un oggetto Connection dichiarato in modo implicito o esplicito che specifica il contesto.

Operazioni con ambito

Il contesto definisce anche l'ambito, ovvero la directory e le relative sottodirectory che possono partecipare alle operazioni successive. L'oggetto Record dispone di diversi metodi con ambito che operano su una directory e su tutte le relative sottodirectory. Questi metodi includono CopyRecord, MoveRecord e DeleteRecord.

URL relativi come testo del comando

È possibile specificare un comando da eseguire nell'origine dati digitando una stringa nel parametro CommandText del metodo Execute dell'oggetto Connection e nel parametro Source del metodo Open dell'oggetto Recordset.

Un URL relativo può essere specificato nel parametro CommandText o Source. L'URL relativo non rappresenta effettivamente un comando, ad esempio un comando SQL, ma specifica semplicemente i parametri. Il contesto della connessione attiva deve essere un URL assoluto e il parametro Option deve essere impostato su adCmdTableDirect.

Ad esempio, l'esempio di codice seguente illustra come aprire un oggetto Recordset nel file Readme25.txt della directory Winnt/system32:

recordset.Open "system32/Readme25.txt", "URL=https://YourServer/Winnt/",,,adCmdTableDirect  

L'URL assoluto nella stringa di connessione specifica il server (YourServer) e il percorso (Winnt). Questo URL definisce anche il contesto.

L'URL relativo nel testo del comando usa l'URL assoluto come punto di partenza e specifica il resto del percorso (system32) e il file da aprire (Readme25.txt).

Il campo delle opzioni (adCmdTableDirect) indica che il tipo di comando è un URL relativo.

Come altro esempio, il codice seguente aprirà un oggetto Recordset nel contenuto della directory Winnt:

recordset.Open "", "URL=https://YourServer/Winnt/",,,adCmdTableDirect  

Schemi dell'URL forniti dal provider OLE DB

La parte iniziale di un URL completo è lo schema usato per accedere alla risorsa identificata dal resto dell'URL. Esempi sono HTTP (Hypertext Transfer Protocol) e FTP (File Transfer Protocol).

ADO supporta i provider OLE DB che riconoscono i propri schemi dell'URL. Ad esempio, il provider Microsoft OLE DB per Internet Publishing, che accede ai file "pubblicati" di Windows 2000, riconosce lo schema HTTP esistente.

Vedi anche

Oggetto Connection (ADO)
Oggetto Record (ADO)
Oggetto Recordset (ADO)