Absolute und relative URLs
Eine URL gibt den Speicherort eines Ziels an, das auf einem lokalen oder vernetzten Computer gespeichert ist. Das Ziel kann eine Datei, ein Verzeichnis, eine HTML-Seite, ein Bild, ein Programm usw. sein.
Eine absolute URL enthält alle Informationen, die zum Suchen einer Ressource erforderlich sind.
Eine relative URL sucht eine Ressource unter Verwendung einer absoluten URL als Ausgangspunkt. Tatsächlich wird die "vollständige URL" des Ziels durch Verketten der absoluten und relativen URLs angegeben.
Eine absolute URL verwendet das folgende Format: scheme://server/path/resource
Eine relative URL besteht in der Regel nur aus dem Pfadund optional die Ressource, aber kein Schema oder Server. In den folgenden Tabellen werden die einzelnen Teile des vollständigen URL-Formats definiert.
Schema
Gibt an, wie auf die Ressource zugegriffen werden soll.
Server
Gibt den Namen des Computers an, auf dem sich die Ressource befindet.
Pfad
Gibt die Reihenfolge der Verzeichnisse an, die zum Ziel führen. Wenn Ressource weggelassen wird, ist das Ziel das letzte Verzeichnis im Pfad.
Ressource
Falls sie enthalten ist, ist die Ressource das Ziel und in der Regel der Name einer Datei. Es kann sich um eine einfache Datei handeln, einen einzelnen binären Bytestrom oder ein strukturiertes Dokument enthalten, einen oder mehrere Speicher und binäre Bytedatenströme enthalten.
URL-Schemaregistrierung
Wenn ein Anbieter URLs unterstützt, registriert der Anbieter ein oder mehrere URL-Schemas. Die Registrierung bedeutet, dass alle URLs, die das Schema verwenden, automatisch den registrierten Anbieter aufrufen. Beispielsweise wird das HTTP--Schema für den Microsoft OLE DB-Anbieter für Internet Publishingregistriert. ADO geht davon aus, dass alle URLs mit dem Präfix "http" Webordner oder -dateien darstellen, die mit dem Internet Publishing-Anbieter verwendet werden sollen. Informationen zu den von Ihrem Anbieter registrierten Schemas finden Sie in ihrer Anbieterdokumentation.
Definieren des Kontexts mit einer URL
Eine Funktion einer geöffneten Verbindung, dargestellt durch ein Connection-Objekt, besteht darin, nachfolgende Vorgänge auf die durch diese Verbindung dargestellte Datenquelle einzuschränken. Das heißt, die Verbindung definiert den Kontext für nachfolgende Vorgänge.
Mit ADO 2.7 oder höher kann eine absolute URL auch einen Kontext definieren. Wenn beispielsweise ein Record-Objekt mit einer absoluten URL geöffnet wird, wird implizit ein Connection-Objekt erstellt, um die durch die URL angegebene Ressource darzustellen.
Eine absolute URL, die einen Kontext definiert, kann im ActiveConnection Parameter des Record-Objekts Open-Methode angegeben werden. Eine absolute URL kann auch als Wert des Schlüsselworts "URL=" im Connection-Objekt Open-Methode ConnectionString-Parameter angegeben werden, und im Recordset-Objekt Open-Methode ActiveConnection-Parameter.
Kontext kann auch definiert werden, indem ein Record- oder Recordset--Objekt geöffnet wird, das ein Verzeichnis darstellt, da diese Objekte bereits ein implizites oder explizit deklariertes Connection-Objekt aufweisen, das den Kontext angibt.
Bereichsoperationen
Der Kontext definiert auch den Bereich, d. h. das Verzeichnis und seine Unterverzeichnisse, die an nachfolgenden Vorgängen teilnehmen können. Das Record-Objekt verfügt über mehrere bereichsbezogene Methoden, die in einem Verzeichnis und allen Unterverzeichnissen ausgeführt werden. Diese Methoden umfassen CopyRecord, MoveRecordund DeleteRecord.
Relative URLs als Befehlstext
Sie können einen Befehl angeben, der für die Datenquelle ausgeführt werden soll, indem Sie eine Zeichenfolge im CommandText-Parameter der Connection-Objekt der Execute-Methode eingeben und im Source-Parameter der Recordset-Objekt der Open-Methode.
Eine relative URL kann im parameter CommandText oder Source angegeben werden. Die relative URL stellt keinen Befehl dar, z. B. einen SQL-Befehl; sie gibt lediglich die Parameter an. Der Kontext der aktiven Verbindung muss eine absolute URL sein, und der parameter Option muss auf adCmdTableDirectfestgelegt werden.
Im folgenden Codebeispiel wird gezeigt, wie man ein -Recordset in der Datei Readme25.txt des Winnt/system32-Verzeichnisses öffnet.
recordset.Open "system32/Readme25.txt", "URL=https://YourServer/Winnt/",,,adCmdTableDirect
Die absolute URL in der Verbindungszeichenfolge gibt den Server (YourServer
) und den Pfad (Winnt
) an. Diese URL definiert auch den Kontext.
Die relative URL im Befehlstext verwendet die absolute URL als Ausgangspunkt und gibt den Rest des Pfads (system32
) und die zu öffnende Datei (Readme25.txt
) an.
Das Optionsfeld (adCmdTableDirect
) gibt an, dass der Befehlstyp eine relative URL ist.
Als weiteres Beispiel öffnet der folgende Code ein Recordset- im Inhalt des Winnt
Verzeichnisses:
recordset.Open "", "URL=https://YourServer/Winnt/",,,adCmdTableDirect
OLE DB-Provider-Supplied-URL-Schemata
Der führende Teil einer vollqualifizierten URL ist das Schema, das für den Zugriff auf die ressource verwendet wird, die durch den Rest der URL identifiziert wird. Beispiele sind HTTP (Hypertext Transfer Protocol) und FTP (File Transfer Protocol).
ADO unterstützt OLE DB-Anbieter, die ihre eigenen URL-Schemas erkennen. Beispielsweise erkennt der Microsoft OLE DB-Anbieter für Internet Publishing, auf "veröffentlichte" Windows 2000-Dateien zugreift, das vorhandene HTTP-Schema.
Siehe auch
Connection-Objekt (ADO)
Record-Objekt (ADO)
Recordset-Objekt (ADO)