Datengegenstände von ActiveX

ActiveX Data Objects (ADO) des Microsofts sind eine Reihe von Gegenständen von Component Object Model (COM), um auf Datenquellen zuzugreifen. Ein Teil von MDAC, es stellt eine middleware Schicht zwischen Programmiersprachen und OLE DB (ein Mittel zur Verfügung, auf Datenläden, ob sie zuzugreifen, Datenbanken oder sonst, auf eine gleichförmige Weise sein). WIRBEL erlaubt einem Entwickler, Programme zu schreiben, dass Zugriffsdaten ohne zu wissen, wie die Datenbank durchgeführt wird. Er muss der Datenbank für die Verbindung nur bewusst sein. Keine Kenntnisse von SQL sind erforderlich, auf eine Datenbank zuzugreifen, wenn man WIRBEL verwendet, obwohl man WIRBEL verwenden kann, um SQL-Befehle direkt durchzuführen. Der Nachteil der Letzteren ist, dass es eine Abhängigkeit auf den Typ der verwendeten Datenbank einführt.

WIRBEL wird als ein Nachfolger der früheren Gegenstand-Schichten des Microsofts eingestellt, um auf Datenquellen, einschließlich RDO (Entfernte Datengegenstände) und DAO (Datenzugriffsgegenstände) zuzugreifen. WIRBEL wurde von Microsoft im Oktober 1996 eingeführt.

Internals

WIRBEL wird aus vier Sammlungen und zwölf Gegenständen zusammengesetzt.

;;;;

WIRBEL-Sammlungen

Felder

: Diese Sammlung enthält eine Reihe von Feldgegenständen. Die Sammlung kann entweder in einem Gegenstand von Recordset oder in einem Rekordgegenstand verwendet werden. In einem Gegenstand von Recordset entspricht jeder der Feldgegenstände, die die Feldsammlung zusammensetzen, einer Säule in diesem Rekordsatz-Gegenstand. In einem Rekordgegenstand kann ein Feld eine absolute oder relative URL-ADRESSE sein, die in einen baumstrukturierten namespace (verwendet für halbstrukturierte Datenversorger wie der Microsoft OLE DB Provider für das Internetveröffentlichen) oder als eine Verweisung auf den mit diesem Rekordgegenstand vereinigten Verzug-Strom-Gegenstand hinweist.

Eigenschaften

: Ein Gegenstand kann mehr als einen Eigentumsgegenstand haben, die in der Eigenschaften-Sammlung des Gegenstands enthalten werden.

Rahmen

: Ein Befehl-Gegenstand kann mehrere Parameter-Befehle haben, sein vorherbestimmtes Verhalten zu ändern, und jeder der Parameter-Gegenstände wird in der Befehl-Gegenstand-Rahmen-Sammlung enthalten

Fehler

: Geschaffenen Fehler ganzen Versorgers werden zu einer Sammlung von Fehlergegenständen passiert, während die Fehlersammlung selbst in einem Verbindungsgegenstand enthalten wird. Wenn eine WIRBEL-Operation einen Fehler schafft, wird die Sammlung geklärt, und eine neue Gruppe von Fehlergegenständen werden in der Sammlung geschaffen.

WIRBEL-Gegenstände

Verbindung

: Der Verbindungsgegenstand ist die Verbindung des WIRBELS zu einem Datenladen über das OLE DB. Der Verbindungsgegenstand versorgt Information über die Sitzung und stellt Methoden zur Verfügung, zum Datenladen in Verbindung zu stehen. Da einige Datenläden verschiedene Methoden haben, eine Verbindung herzustellen, dürfen einige Methoden nicht im Verbindungsgegenstand für besondere OLE DB-Versorger unterstützt werden. Ein Verbindungsgegenstand steht zum Datenladen mit seiner 'Offenen' Methode mit einer Verbindungsschnur in Verbindung, die angibt, dass die Verbindung als eine Liste des Schlüssels Paare schätzt (zum Beispiel: "Versorger ='SQLOLEDB'; Datenquelle ='TheSqlServer'; anfänglicher Katalog ='Northwind'; einheitliche Sicherheit ='SSPI';"). Dessen Anfang den Typ von der Datenlager-Verbindung identifizieren muss, die der Verbindungsgegenstand verlangt:

:* ein OLE DB-Versorger (zum Beispiel SQLOLEDB), mit der Syntax "Versorger =";

:* ein Dateiname, mit der Syntax "Dateiname =";

:* ein entfernter Versorger und Server (sieh RDS), mit der Syntax "Entfernter Versorger =" und "Entfernter Server ="; oder

:* eine absolute URL-ADRESSE, mit der Syntax "URL-ADRESSE ="

Befehl

: Nachdem der Verbindungsgegenstand eine Sitzung zur Datenquelle gründet, werden Instruktionen dem Datenversorger über den Befehl-Gegenstand gesandt. Der Befehl-Gegenstand kann SQL-Abfragen direkt dem Versorger durch den Gebrauch des Eigentums von CommandText senden, eine parametrisierte Abfrage oder versorgtes Verfahren durch den Gebrauch eines Parameter-Gegenstands oder die Rahmen-Sammlung zu senden oder eine Abfrage zu führen und die Ergebnisse in einen Dataset-Gegenstand über die Durchführen Methode zurückzugeben. Es gibt mehrere andere Methoden, die im Befehl-Gegenstand in Zusammenhang mit anderen Gegenständen, wie der Strom, RecordSet oder die Verbindungsgegenstände verwendet werden können.

Recordset

: Ein recordset ist eine Gruppe von Aufzeichnungen, und kann entweder aus einer Basistabelle oder als das Ergebnis einer Abfrage zum Tisch kommen. Der Gegenstand von RecordSet enthält eine Feldsammlung und eine Eigenschaften-Sammlung. Die Feldsammlung ist eine Reihe von Feldgegenständen, die die entsprechenden Säulen im Tisch sind. Die Eigenschaften-Sammlung ist eine Reihe von Eigentumsgegenständen, der eine besondere Funktionalität eines OLE DB-Versorgers definiert. RecordSet hat zahlreiche Methoden und Eigenschaften, für die Daten zu untersuchen, der innerhalb seiner besteht. Aufzeichnungen können im recordset durch das Ändern der Werte in der Aufzeichnung und dann das Auffordern der Methode von Aktualisierung oder UpdateBatch aktualisiert werden.

Unmittelbarer

: Der recordset wird mit dem adLockOptimistic oder AdLockPessimistic-Schloss geschlossen. Die Daten werden an der Datenquelle aktualisiert, nachdem die Aufzeichnung geändert wird und die Aktualisierungsmethode genannt wird.

Gruppe

: Der recordset wird mit adLockBatchOptimistic und jedes Mal geschlossen, wenn Aktualisierung genannt wird, werden die Daten in einem vorläufigen Puffer aktualisiert. Schließlich, wenn UpdateBatch genannt wird, werden die Daten zurück an der Datenquelle völlig aktualisiert. Das ist im Vorteil seiner, ganz im Gedächtnis getan werden, und wenn ein Problem dann vorkommt, wird UpdateCancel genannt, und die Aktualisierungen werden der Datenquelle nicht gesandt

Transaktion

: Wenn der OLE DB-Versorger es erlaubt, können Transaktionen verwendet werden. Um die Transaktion anzufangen, ruft der Programmierer die Methode von BeginTrans an und tut die erforderlichen Aktualisierungen. Wenn sie alle getan werden, ruft der Programmierer die Methode von CommitTrans an. RollbackTrans kann angerufen werden, um irgendwelche Änderungen zu annullieren, die innerhalb der Transaktion und rollback die Datenbank zum Staat vorgenommen sind, bevor die Transaktion begonnen

hat

Aufzeichnung

: Dieser Gegenstand vertritt eine Aufzeichnung in der Datenbank und enthält eine Feldsammlung. RecordSet besteht aus einer Sammlung von Rekordgegenständen.

Strom

: Ein Strom, der hauptsächlich in einem Gegenstand von RecordSet verwendet ist, ist ein Mittel des Lesens und Schreibens eines Stroms von Bytes. Es wird größtenteils verwendet, um einen recordset in einem XML-Format zu sparen, Befehle einem OLE DB-Versorger als eine Alternative zum Gegenstand von CommandText zu senden und den Inhalt einer binären Datei oder Textdatei zu enthalten.

Parameter

: Ein Parameter ist ein Mittel, das Verhalten eines allgemeinen Stückes der Funktionalität zu verändern, zum Beispiel könnte ein versorgtes Verfahren verschiedene Rahmen dazu abhängig wovon Bedürfnisse passieren lassen, getan zu werden; diese werden parametrisierte Befehle genannt.

Feld

: Jeder Rekordgegenstand enthält viele Felder, und ein Gegenstand von RecordSet hat einen entsprechenden Feldgegenstand auch. Der Gegenstand-Feldgegenstand von RecordSet entspricht einer Säule im Datenbanktisch, in dem er Verweise anbringt.

Eigentum

: Dieser Gegenstand ist dem OLE DB-Versorger spezifisch und definiert eine Fähigkeit, die der Versorger durchgeführt hat. Ein Eigentumsgegenstand kann entweder ein eingebautes Eigentum sein — es ist ein bestimmtes Eigentum, das durch den WIRBEL bereits durchgeführt ist, und kann so nicht verändert werden — oder kann ein dynamisches Eigentum — definiert vom zu Grunde liegenden Datenversorger sein und kann geändert werden

Fehler

: Wenn ein OLE DB-Versorger-Fehler während des Gebrauches des WIRBELS vorkommt, wird ein Fehlergegenstand in der Fehlersammlung geschaffen. Andere Fehler treten in keinen Fehlergegenstand jedoch ein. Zum Beispiel werden irgendwelche Fehler, die vorkommen, wenn sie Daten in RecordSet oder Feldgegenstand manipulieren, in einem Status-Eigentum versorgt. SK

Grundlegender Gebrauch

Einige grundlegende Schritte sind erforderlich, um im Stande zu sein, auf Daten mit dem WIRBEL zuzugreifen und sie zu manipulieren:

  1. Schaffen Sie einen Verbindungsgegenstand, zur Datenbank in Verbindung zu stehen.
  2. Schaffen Sie einen Recordset-Gegenstand, um Daten darin zu erhalten.
  3. Öffnen Sie die Verbindung
  4. Bevölkern Sie den recordset, indem Sie es öffnen und den gewünschten Tabellennamen oder die SQL Behauptung als ein Parameter passieren, um Funktion zu öffnen.
  5. Tun Sie die ganze gewünschte Suche/Verarbeitung auf den herbeigeholten Daten.
  6. Begehen Sie die Änderungen, die Sie mit den Daten (wenn irgendwelcher) vorgenommen haben, indem Sie Methoden von Aktualisierung oder UpdateBatch verwendet haben.
  7. Schließen Sie den recordset
  8. Schließen Sie die Verbindung

NATTER-Beispiel

Hier ist ein NATTER-Beispiel mit dem WIRBEL, um das "Namen"-Feld von einem Tisch genannt "Phonebook" auszuwählen, wo ein "PhoneNumber" "555-5555" gleich war.

verdunkeln Sie myconnection, myrecordset, nennen Sie

Satz myconnection = server.createobject ("ADODB.Connection")

Satz myrecordset = server.createobject ("ADODB.Recordset")

myconnection.open mydatasource

myrecordset.open "Phonebook", myconnection

myrecordset.find "PhoneNumber = '555-5555'"

nennen Sie = myrecordset.fields.item ("Name")

myrecordset.close

Satz myrecordset = nichts

Satz myconnection = nichts

</Quelle>

Das ist zum folgenden NATTER-Code gleichwertig, der einfachen SQL statt der Funktionalität des Gegenstands von Recordset verwendet:

verdunkeln Sie myconnection, myrecordset, nennen Sie

Satz myconnection = server.createobject ("ADODB.connection")

myconnection.open mydatasource

Satz myrecordset = myconnection.execute ("WÄHLEN Namen VON Phonebook WO PhoneNumber = '555-5555'" AUS)

nennen Sie = myrecordset (0)

</Quelle>

Softwareunterstützung

WIRBEL wird in der NATTER, Delphi, PowerBuilder, und im Visuellen unterstützt, der für Anwendungen (VBA) grundlegend ist.

Siehe auch

  • ADO.NET
  • Vergleich des WIRBELS und ADO.NET

Links


Frederic William Henry Myers / Höher
Impressum & Datenschutz