Compartilhar via


URLs absolutas e relativas

Uma URL especifica o local de um destino armazenado em um computador local ou em rede. O destino pode ser um arquivo, diretório, página HTML, imagem, programa e assim por diante.

Uma URL absoluta contém todas as informações necessárias para localizar um recurso.

Uma URL relativa localiza um recurso usando uma URL absoluta como ponto de partida. Na verdade, a "URL completa" do destino é especificada pela concatenação das URLs absolutas e relativas.

Uma URL absoluta usa o seguinte formato: scheme://server/path/resource

Normalmente, uma URL relativa consiste apenas no caminho e, opcionalmente, no recurso, mas em nenhum esquema nem servidor. As tabelas a seguir definem as partes individuais do formato da URL completa.

scheme
Especifica como o recurso deve ser acessado.

servidor
Especifica o nome do computador em que o recurso de está localizado.

caminho
Especifica a sequência de diretórios que levam ao destino. Se o recurso for omitido, o destino será o último diretório no caminho.

recurso
Se incluído, o recurso é o destino e normalmente é o nome de um arquivo. Pode ser um arquivo simples, que contém um único fluxo binário de bytes, ou um documento estruturado, que contém um ou mais armazenamentos e fluxos binários de bytes.

Registro do Esquema de URL

Se um provedor der suporte a URLs, ele registrará um ou mais esquemas de URL. O registro significa que todas as URLs que usam o esquema invocarão automaticamente o provedor registrado. Por exemplo, o esquema http está registrado no Provedor OLE DB da Microsoft para Publicação na Internet. A ADO pressupõe que todas as URLs prefixadas com "http" representem arquivos ou pastas da Web a serem usados com o Provedor de Publicação na Internet. Para obter informações sobre os esquemas registrados pelo provedor, confira a documentação do provedor.

Definição de Contexto com uma URL

Uma função de uma conexão aberta, representada por um objeto Connection, é restringir as operações subsequentes à fonte de dados representada por essa conexão. Ou seja, a conexão define o contexto para operações subsequentes.

Com a ADO 2.7 ou posterior, uma URL absoluta também pode definir um contexto. Por exemplo, quando um objeto Record é aberto com uma URL absoluta, um objeto Connection é criado implicitamente para representar o recurso especificado pela URL.

Uma URL absoluta que define um contexto pode ser especificada no parâmetro ActiveConnection do método Open do objeto Record. Uma URL absoluta também pode ser especificada como o valor da palavra-chave "URL=" no parâmetro ConnectionString do método Open do objeto Connection e no parâmetro ActiveConnection do método Open do objeto Recordset.

O contexto também pode ser definido abrindo um objeto Record ou Recordset que representa um diretório, pois esses objetos já têm um objeto Connection implicitamente ou explicitamente declarado que especifica o contexto.

Operações com Escopo

O contexto também define o escopo, ou seja, o diretório e seus subdiretórios que podem participar das operações subsequentes. O objeto Record tem vários métodos com escopo que operam em um diretório e todos os subdiretórios. Esses métodos incluem CopyRecord, MoveRecord e DeleteRecord.

URLs Relativas como Texto de Comando

Você pode especificar um comando a ser executado na fonte de dados, digitando uma cadeia de caracteres no parâmetro CommandText do método Execute do objeto Connection e no parâmetro Source do método Open do objeto Recordset.

Uma URL relativa pode ser especificada no parâmetro CommandText ou Source. A URL relativa não representa realmente um comando, como um comando SQL; apenas especifica os parâmetros. O contexto da conexão ativa deve ser uma URL absoluta e o parâmetro Option deve ser definido como adCmdTableDirect.

O exemplo de código a seguir mostra como abrir um Recordset no arquivo Readme25.txt do diretório Winnt/system32:

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

A URL absoluta na cadeia de conexão especifica o servidor (YourServer) e o caminho (Winnt). Essa URL também define o contexto.

A URL relativa no texto de comando usa a URL absoluta como ponto de partida e especifica o restante do caminho (system32) e o arquivo a ser aberto (Readme25.txt).

O campo de opções (adCmdTableDirect) indica que o tipo de comando é uma URL relativa.

Como outro exemplo, o código a seguir abrirá um Recordset no conteúdo do diretório Winnt:

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

Esquemas de URL Oferecidos pelo Provedor OLE DB

A parte principal de uma URL totalmente qualificada é o esquema usado para acessar o recurso identificado pelo restante da URL. Os exemplos são os protocolos HTTP e FTP.

A ADO dá suporte a provedores OLE DB que reconhecem seus próprios esquemas de URL. Por exemplo, o Provedor OLE DB da Microsoft para Publicação na Internet, que acessa arquivos "publicados" do Windows 2000, reconhece o esquema HTTP existente.

Confira também

Objeto Connection (ADO)
Objeto Record (ADO)
Objeto Recordset (ADO)