------------------------------------------------------------ Microsoft(R) ActiveX(R) Data Objects Version 2.1 - Infodatei ------------------------------------------------------------ (c) 1998 Microsoft Corporation. Alle Rechte vorbehalten. In diesem Dokument finden Sie aktuelle und andere Informationen, die die Dokumentation von Microsoft ADO ergänzen. ------ INHALT ------ 1. PRODUKTBESCHREIBUNG 2. NEUE FEATURES 2.1 Seek und Index 2.2 Zeilenaktualisierung und Synchronisation 2.3 Microsoft OLE DB Persistence Provider 2.4 Microsoft Data Shaping Service für OLE DB 2.5 Microsoft OLE DB Remoting Provider 3. TECHNISCHE HINWEISE 3.1 Verbesserte Sicherheitsfunktionen 3.2 Beschränktes Verhalten 3.3 Anpassen der Sicherheitseinstellungen 4. HINWEISE ZU BEKANNTEN FEHLERN UND EINSCHRÄNKUNGEN UND WIE SIE UMGANGEN WERDEN KÖNNEN, AKTUELLE DOKUMENTATIONSHINWEISE ---------------------- 1. PRODUKTBESCHREIBUNG ---------------------- Bei ActiveX Data Objects (ADO) handelt es sich um eine automatisierungsbasierte Schnittstelle für den Zugriff auf Daten. ADO verwendet die OLE DB-Schnittstelle für den Zugriff auf ein breites Spektrum von Datenquellen, einschließlich, aber nicht beschränkt auf, Daten, die über ODBC zur Verfügung gestellt werden. Benutzer von RDO und DAO werden sich bestimmt schnell an das Programmieren für ADO gewöhnen, denn der Gesamtentwurf von ADO ist aus unserer Erfahrung bei der Entwicklung dieser Schnittstellen entstanden. Bei Microsoft Remote Data Service (RDS) handelt es sich um eine Komponente von ADO, die eine schnelle und effiziente Datenanbindung sowie das Grundgerüst für die Datenveröffentlichung mit Anwendungen, die sich in Microsoft Internet Explorer befinden, zur Verfügung stellt. Sie basiert auf einer verteilten Client/Server-Technologie, die über die Anwendungsprotokolle HTTP, HTTPS (HTTP über Secure Socket Layer) und DCOM funktioniert. Durch die Verwendung von datenbezogenen ActiveX-Steuerelementen bietet RDS Webentwicklern, die verteilte, datenintensive Anwendungen für die Verwendung in Unternehmens-Intranets und im Internet erstellen müssen, die Datenzugriffsprogrammierung im Stil von Microsoft Visual Basic(R). ---------------- 2. NEUE FEATURES ---------------- ADO 2.1 enthält mehrere neue Features für Entwickler. 2.1 Seek und Index Mit der Seek-Methode und der Index-Eigenschaft können Sie Zeilen in einem Recordset jetzt schnell auf Indexbasis finden. 2.2 Zeilenaktualisierung und Synchronisation Der neue "Row Fix-Up"-Modus bietet Benutzern die benutzerdefinierte Steuerung von Zeilenaktualisierungen und Synchronisation für Recordset-Objekte, die durch eine JOIN-Operation erstellt wurden. Sieben neue dynamische Eigenschaften steuern das Verhalten der fünf vorhandenen Methoden. 2.3 Microsoft OLE DB Persistence Provider Der Microsoft OLE DB Persistence Provider speichert ein Recordset-Objekt und stellt es einer Datei wieder zur Verfügung. Dies geschieht im Zusammenwirken mit den Methoden Save und Open des Recordset-Objekts. Von dieser Version an kann ein Recordset-Objekt im Format XML (Extensible Markup Language) gespeichert werden, dem Standardinstrument zum Festlegen vom von Benutzer angegebenen Tags für Daten, die durch das Internet übermittelt werden. 2.4 Microsoft Data Shaping Service für OLE DB Der Microsoft Data Shaping Service für OLE DB, der Datenstrukturierung unterstützt, bietet jetzt folgende Features: 2.4.1 Neustrukturieren eines zuvor strukturierten Recordsets. Zur Unterstützung dieses Features verfügen Recordset-Objekte nunmehr über eine Name-Eigenschaft, die für die Dauer der Verbindung besteht. 2.4.2 Auf jeder Ebene eines strukturierten Recordset-Objekts - also nicht nur für ein unmittelbar untergeordnetes Element, das zu einem übergeordneten Element gehört - können Sie Aggregatberechnungen in einer Spalte durchführen. Dieses Feature bildet mithilfe vollständiger Kapitelnamen einen Pfad zur gewünschten Ebene und Spalte. 2.4.3 Bei parametrisierten COMPUTE-Befehlen kann eine willkürliche Anzahl von eingreifenden COMPUTE-Klauseln zwischen PARAMETER-Klausel und Parameter-Argument stehen. 2.5 Microsoft OLE DB Remoting Provider Der Serviceprovider Microsoft OLE DB Remoting Provider wird zum Standard-Serviceprovider und erhält neue dynamische Eigenschaften für verbesserte Leistung, größere Steuerungsmöglichkeiten durch den Benutzer und Abwärtskompatibilität mit ADO 2.0. ---------------------- 3. TECHNISCHE HINWEISE ---------------------- 3.1 Verbesserte Sicherheitsfunktionen Diese Version enthält verbesserte Sicherheitsfunktionen für ADO- und RDS-Objekte, so dass einige Operationen beschränkt sind, wenn Internet Explorer in einem "sicheren" Modus ausgeführt wird. 3.1.1. Zonen Sie können in Internet Explorer 4.0 verschiedene Sicherheitseinstellungen für verschiedene "Zonen" festlegen, um das Verhalten von ADO/RDS-Objekten in diesen Zonen anzupassen. In Internet Explorer 4.0 sind die folgenden vier Zonen definiert: * Internet-Zone * Lokale Intranet-Zone * Eingeschränkte Sites-Zone * Vertraute Sites-Zone 3.1.2. Sicherheitsstufen Sie können für jede dieser Zonen die zu verwendende Sicherheitsstufe angeben. Die folgenden Sicherheitsstufen stehen für jede Zone zur Verfügung: * Hoch * Mittel * Niedrig * Benutzerdefiniert Damit die ADO/RDS-Objekte, ebenso wie alle anderen ActiveX-Steuerelemente, in Internet Explorer 4.0 überhaupt funktionieren, muss die Sicherheitsstufe auf "Mittel" oder "Hoch" festgelegt werden. Benutzerdefinierte Einstellungen werden verwendet, um festzulegen, ob sich ADO/RDS-Objekte im sicheren oder unsicheren Modus verhalten. 3.2 Beschränktes Verhalten Standardmäßig haben alle unsicheren Operationen mit ADO/RDS-Objekten in Internet Explorer 4.0 zur Folge, dass beim Zugriff auf Seiten von der "Lokalen vertrauten Zone", der "Vertraute Sites-Zone" und der "Internet-Zone" ein Benutzerdialogfeld angezeigt wird. Für Seiten, die von der "Eingeschränkte Sites-Zone" geladen werden, werden unsichere Operationen mit ADO/RDS-Objekten standardmäßig deaktiviert. Im Folgenden wird das Verhalten von ADO/RDS bei der Ausführung in diesen Modi beschrieben: 3.2.1 Sichere Objekte Die folgenden Objekte werden als "sicher" betrachtet. Dies bedeutet, dass unsichere Operationen (detailliert in 3.2.3 beschrieben) in einer sicheren Umgebung (z. B. Internet Explorer (standardmäßig), wenn nicht benutzerdefinierte Einstellungen für die Ausführung in einem unsicheren Modus verwendet werden) nicht erlaubt und in einer unsicheren Umgebung (z. B. Visual Basic) erlaubt sind. a. RDS.DataControl-Objekt b. RDS.DataSpace-Objekt c. ADO-Recordset-Objekt 3.2.2 Unsichere Objekte Die folgenden Objekte werden als "unsicher" betrachtet. Sie können beim Betrieb in einer sicheren Umgebung weder direkt noch indirekt erzeugt (und einem Benutzer gegeben) werden. a. RDSServer.DataFactory-Objekt b. ADO-Connection-Objekt c. ADO-Command-Objekt 3.2.3 Unsichere Operationen mit sicheren Objekten Die folgenden Operationen werden bei den "sicheren" Objekten - RDS.DataControl, RDS.DataSpace, ADO-Recordset - als unsichere Operationen betrachtet. Diese Operationen sind in einer sicheren Umgebung nicht erlaubt, in einer unsicheren Umgebung jedoch erlaubt. a. RDS.DataControl i) Alle Situationen mit dem RDS.DataControl-Objekt auf zwei Ebenen und mit DCOM. Dies bedeutet, dass Sie keine Datenbankverbindungen auf Ihrem lokalen Computer oder von Servern aus öffnen können, mit denen Sie über das DCOM-Protokoll verbunden sind. ii) Alle Operationen auf drei Ebenen über HTTP sind auf den Server beschränkt, von dem die Seite heruntergeladen wurde. Dies bedeutet, dass die Server-Eigenschaft des RDS.DataControl-Objekts mit dem Namen des Hosts (http://Server) übereinstimmen muss, von dem die Seite heruntergeladen wurde. b. RDS.DataSpace i) Alle Situationen mit dem RDS.DataSpace-Objekt auf zwei Ebenen und mit DCOM. Dies bedeutet, dass Sie das RDS.DataSpace-Objekt nicht zum Aufrufen von Geschäftsobjekten auf Ihrem lokalen Computer oder über das DCOM-Protokoll verwenden können. ii) Alle Situationen auf drei Ebenen über HTTP sind auf den Server beschränkt, von dem die Seite heruntergeladen wurde. Dies bedeutet, dass der zweite Parameter im Aufruf des DataSpace-Objekts durch die CreateObject-Methode auf denselben Server verweisen muss, von dem die Seite heruntergeladen wurde. c. ADO-Recordset i) Herstellen einer Verbindung, bei der der Provider nicht MS Remote ist. Daher muss die Verbindungszeichenfolge mit "Provider=MS Remote" beginnen. Das "Remote Server"-Tag in der Verbindungszeichenfolge muss ebenfalls denselben Namen haben wie der Server, von dem die Seite heruntergeladen wurde. Lokale Verbindungen auf zwei Ebenen oder über DCOM sind nicht erlaubt. ii) Lokale Persistence-Operationen, wie das Speichern eines Recordset-Objekts im lokalen Dateisystem und das Öffnen eines Recordset-Objekts aus einer Datei auf dem lokalen Computer. 3.3 Anpassen der Sicherheitseinstellungen Das Verhalten von ADO/RDS wird durch die Einstellung der Option "Ausführen von ActiveX-Steuerelementen, die als sicher für Scripting markiert sind" gesteuert. Sie können die Sicherheitseinstellungen ändern, indem Sie die Sicherheitsstufe für eine bestimmte Zone ändern. Die Standardeinstellungen für die Option "Ausführen von ActiveX-Steuerelementen, die als sicher für Scripting markiert sind" für die Intranet-Zone lauten wie folgt: Sicherheitsstufe = Hoch Wert = "Disable" Sicherheitsstufe = Mittel Wert = "Disable" Sicherheitsstufe = Niedrig Wert = "Prompt" Die Standardwerte der anderen Sicherheitszonen finden Sie in der Dokumentation von Internet Explorer. Sie können das Verhalten nicht verbundener ADO-Recordset-Objekte, die im Browser ausgeführt werden, ändern, indem Sie die Sicherheitsstufe ändern. Wenn Sie unsichere Operationen aktivieren möchten und nicht bei jedem Versuch einer solchen Operation ein Dialogfeld angezeigt werden soll, dann müssen Sie den Wert der oben genannten Option ausdrücklich auf "Enable" festlegen. Beachten Sie bitte auch, dass Sie dann den Wert der oben genannten Option auf "Enable" festlegen müssen, wenn Sie den Versuch einer unsicheren Operation (z. B. das Speichern eines Recordset-Objekts in einer Datei im lokalen Dateisystem) mit einem vom RDS.DataControl-Objekt erhaltenen ADO-Recordset-Objekt unternehmen. Die Einstellung auf "Prompt" hat bei solchen Recordset-Objekten (die vom RDS.DataControl-Objekt erhalten wurden) die gleiche Wirkung wie "Disable". Sie können die Standardeinstellungen überschreiben, indem Sie die benutzerdefinierten Einstellungen der oben genannten Option direkt bearbeiten. Sie können wahlweise die (oben beschriebenen) unsicheren Operationen vollständig deaktivieren oder angeben, dass eine Warnmeldung angezeigt werden soll, sobald der Versuch einer solchen Operation unternommen wird, oder eine solche Operation ohne jede Warnmeldung aktivieren. Sie können für verschiedene Sicherheitszonen verschiedene benutzerdefinierte Einstellungen vornehmen. Zur Anpassung Ihrer Sicherheitseinstellungen einer bestimmten Sicherheitszone sind die folgenden Schritte erforderlich: VORSICHT: Es wird darauf hingewiesen, dass durch das Aktivieren von "Initialisieren und Scripting von nicht als sicher gekennzeichneten ActiveX-Steuerelementen" (Schritt 5 weiter unten) die Verwendung ALLER ActiveX-Steuerelemente, gleich ob sicher oder unsicher, von Webseiten aus ermöglicht wird (dies setzt den Rechner des Benutzers potenziell bösartigen Steuerelementen oder bösartigem Skriptcode aus). Es wird empfohlen, dass dies nur in den Sicherheitszonen "Intranet" oder "Vertraute Sites" geschehen sollte und nicht in der "Internet"-Zone. 1. Wählen Sie in Internet Explorer 4.0 im Menü "Ansicht" den Befehl "Internet-Optionen". Wählen Sie die Registerkarte "Sicherheit" aus. 2. Wählen Sie in der Dropdownliste "Zone" die Zone, deren Einstellungen Sie anpassen möchten. 3. Wählen Sie "Benutzerdefiniert" für die ausgewählte Zone. Dies aktiviert die Schaltfläche "Einstellungen" im Dialogfeld. 4. Klicken Sie auf "Einstellungen". Das Dialogfeld "Sicherheitseinstellungen" wird angezeigt. 5. Wenn Sie unsichere Operationen (in 3.2.3 beschrieben) mit ADO/RDS-Objekten ohne das Anzeigen einer Warnmeldung aktivieren möchten, wählen Sie im Dialogfeld "Sicherheitseinstellungen" für die Option "Initialisieren und Scripting von nicht als sicher gekennzeichneten ActiveX-Steuerelementen" die Option "Enable". Klicken Sie auf "OK". 6. Wenn bei jedem Versuch einer unsicheren Operation (in 3.2.3 beschrieben) mit ADO/RDS-Objekten eine Warnmeldung angezeigt werden soll, wählen Sie im Dialogfeld "Sicherheitseinstellungen" für die Option "Initialisieren und Scripting von nicht als sicher gekennzeichneten ActiveX-Steuerelementen" die Option "Prompt". Klicken Sie auf "OK". 7. Wenn Sie unsichere Operationen (in 3.2.3 beschrieben) mit ADO/RDS-Objekten vollständig deaktivieren möchten, wählen Sie im Dialogfeld "Sicherheitseinstellungen" für die Option "Initialisieren und Scripting von nicht als sicher gekennzeichneten ActiveX-Steuerelementen" die Option "Disable". Klicken Sie auf "OK". 8. Wiederholen Sie gegebenenfalls diese Schritte, um die Sicherheitseinstellungen für andere Sicherheitszonen anzupassen. 9. Klicken Sie auf "OK". Jetzt verhalten sich ADO/RDS-Objekte so, wie es im benutzerdefinierten Modus angegeben wurde. Diese Einstellungen betreffen die folgenden Verhaltensweisen von ADO/RDS-Objekten (wie in 3.2.3 beschrieben) in der angegebenen Sicherheitszone: Öffnen von lokalen Verbindungen über zwei Ebenen, Arbeiten über DCOM, eine Verbindung mit einem anderen Server herstellen als dem, von dem die Seite ursprünglich heruntergeladen wurde, Speichern und Öffnen eines Recordset-Objekts in/aus Dateien auf dem lokalen Computer. Wenn Sie bei den benutzerdefinierten Optionen "Prompt" festlegen, wird bei einem Versuch einer unsicheren Operation mit ADO/RDS-Objekten die folgende Warnmeldung angezeigt: "Die Seite greift auf eine Datenquelle in einer anderen Domäne zu. Sind Sie damit einverstanden?" Der Benutzer kann wahlweise mit "Ja" oder mit "Nein" antworten. Falls die Antwort "Ja" lautet, wird die Operation abgeschlossen, andernfalls schlägt sie fehl. ------------------------------------------------------------------------------------------------------------------------ 4. HINWEISE ZU BEKANNTEN FEHLERN UND EINSCHRÄNKUNGEN UND WIE SIE UMGANGEN WERDEN KÖNNEN, AKTUELLE DOKUMENTATIONSHINWEISE ------------------------------------------------------------------------------------------------------------------------ 4.1 Zur Zeit wird die Clientpersonifizierung in RDS aufgrund fehlender Unterstützung durch das Betriebssystem nicht unterstützt. 4.2 Beim Erstellen von "virtuellen Servern" im Internet Information Server 4.0 sind die folgenden beiden zusätzlichen Schritte erforderlich, um den Server für das Zusammenwirken mit RDS zu konfigurieren: A) Aktivieren Sie beim Einrichten des Servers die Option "Ausführen erlauben". B) Verschieben Sie die Datei msadcs.dll in das Verzeichnis vStamm\msadc, wobei vStamm das Stammverzeichnis Ihres virtuellen Servers ist. 4.3 Bei der Verwendung von RDS auf einem IIS-Server kann die Anzahl der Threads, die pro Prozessor erstellt werden, durch Bearbeiten der Registrierung auf dem Webserver gesteuert werden. Die Anzahl der Threads pro Prozessor kann die Leistung in Zeiten hohen Datenverkehrs oder in Situationen mit geringem Datenverkehr, aber großen Abfragen, beeinflussen. Das optimale Ergebnis lässt sich am besten durch Ausprobieren ermitteln. Der bestimmte anzupassende Wert ist: HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\W3SVC\Parameters\ADCThreads wobei ADCThreads ein vom Benutzer hinzugefügtes REG_DWORD ist. Die gültigen Werte reichen von 1 bis 50; die Standardeinstellung beträgt 6. Wenn der durch den Registrierungsschlüssel festgelegte Wert größer als 50 ist, wird der Höchstwert (50) verwendet. In der Regel sollte es nicht erforderlich sein, dass der Benutzer diesen Registrierungswert erstellen muss, er ist nicht standardmäßig in der Registrierung enthalten. 4.4 Standardmäßig wird ADO mit einer "sicheren" RDS Server DataFactory-Konfiguration installiert. Ein sicherer Modus bedeutet für RDS Server-Komponenten, dass Folgendes zutrifft: 1. Eine Behandlungsroutine ist für DataFactory erforderlich (über eine Registrierungsschlüsseleinstellung) 2. Unsere Standardbehandlungsroutine, msdfmap.handler, ist registriert, in der Liste der sicheren Behandlungsroutinen vorhanden und als Standardbehandlungsroutine ausgewählt. 3. Die Datei Msdfmap.ini ist im Windows-Verzeichnis installiert. Sie müssen diese Datei entsprechend Ihren Anforderungen konfigurieren, bevor Sie RDS im Modus für drei Ebenen anwenden. Wahlweise können Sie eine uneingeschränkte DataFactory-Installation konfigurieren. DataFactory kann direkt ohne die benutzerdefinierte Behandlungsroutine verwendet werden. Die Benutzer können weiterhin eine benutzerdefinierte Behandlungsroutine verwenden, indem Sie die Verbindungszeichenfolgen bearbeiten; dies ist jedoch nicht erforderlich. Wir liefern die Registrierungsdatei handsafe.reg, um eine sichere Konfiguration für die Registrierungseinträge der Behandlungsroutine einzurichten. Rufen Sie zur Ausführung im sicheren Modus handsafe.reg auf. Wir haben die Registrierungsdatei handunsf.reg bereitgestellt, um eine uneingeschränkte Konfiguration für die Registrierungseinträge der Behandlungsroutine einzurichten. Rufen Sie zur Ausführung im uneingeschränkten Modus handunsf.reg auf. Weitere Informationen zur Verwendung des RDS-Features zur Anpassung von Behandlungsroutinen finden Sie im technischen Artikel "Using the Customization Handler Feature in RDS 2.0", den Sie unter folgender Adresse finden: http://www.microsoft.com/data/techmat.htm 4.5 Die Find-Methode durchsucht eine Datensatzgruppe ausgehend von der aktuellen Zeilenposition in der angegebenen Richtung und sucht dabei nach dem Datensatz, der die festgelegten Kriterien erfüllt. Wenn vor dem Aufrufen dieser Methode keine aktuelle Zeilenposition angegeben wurde, tritt ein Fehler auf. 4.6 Für die Verwendung der ADO-Ereignisse FetchProgress und FetchComplete in Visual Basic ist mindestens Visual Basic 6 erforderlich. 4.7 Die folgenden Operationen werden für die Verwendung in CALC-Ausdrücken bei der Datenstrukturierung als "sicher" betrachtet: Abs, Asc, Atn, CBool, CByte, CCur, CDate, CDbl, Chr, ChrB, ChrW, Chr$, ChrB$, CInt, CLng, Cos, CSng, CStr, Cvar, CVDate, CVErr, Date, Date$, DateAdd, DateDiff, DatePart, DateSerial, DateValue, Day, DDB, Error, Error$, Exp, Fix, Format, Format$, FV, Hex, Hex$, Hour, IIF, InStr, Int, IPmt, IRR, IsDate, IsEmpty, IsError, IsNull, IsNumeric, IsObject, LCase, LCase$, Left, LeftB, Left$, LeftB$, Len, Log, LTrim, LTrim$, Mid, Mid$, Minute, MIRR, Month, Now, NPer, NPV, Oct, Oct$, Pmt, PPmt, PV, QBColor, Rate, RGB, Right, RightB, Right$, RightB$, Rnd, RTrim, RTrim$, Second, Sgn, Sin, SLN, Space, Space$, Sqr, Str, Str$, StrComp, StrConv, String, String$, SYD, Tan, Time,Time$, Timer, TimeSerial, TimeValue, Trim, Trim$, TypeName, UCase, UCase$, Val, VarType , Weekday, Year 4.8 ADO 2.1 unterstützt keine hierarchischen Recordset-Objekte im XML-Format. 4.9 Es ist nicht möglich, die Daten in einer schreibgeschützten Datensatzgruppe zu aktualisieren, indem Sie die Daten in XML speichern und die XML-Datei bearbeiten. Falls die XML-Daten geändert wurden, tritt ein Fehler auf, wenn Sie die Datensatzgruppe in der XML-Datei erneut öffnen. 4.10 Bei der Verwendung von adUseClient oder dem Remoteeinsatz für SQL Server 6.5 Service Pack 4 wird das Schlüsselwort DISTINCT in Abfragen für aktualisierbare Ergebnismengen ignoriert. Dies ist ein Problem von SQL Server und wird in einer zukünftigen Service Pack-Version behoben. 4.11 Die DataTypeEnum-Werte, die im Thema "Type-Eigenschaft" im ActiveX Data Objects-Programmierhandbuch aufgeführt sind, enthalten Fehler. Die folgenden Enum-Werte werden zwar aufgeführt, existieren jedoch nicht und können somit nicht verwendet werden: adArray, adByRef, adVector Die folgenden Werte fehlen zwar in der Liste, existieren jedoch und können somit verwendet werden: adChapter Ein 4 Byte umfassender Chapter-Wert, der zur Identifizierung von Zeilen in einem untergeordneten Rowset verwendet wird (DBTYPE_HCHAPTER). adDBFileTime Ein File Time-Wert (DBTYPE_DBFILETIME). adFileTime Ein 64 Bit umfassender Wert, der die Anzahl der seit 1. Januar 1601 verstrichenen 100-Nanosekunden-Intervalle darstellt (DBTYPE_FILETIME). adPropVariant Ein PROPVARIANT-Wert für die Automatisierung (DBTYPE_PROP_VARIANT). adVarNumeric Ein numerischer Wert (nur Parameter-Objekt). 4.12 Die Liste gültiger Werte für den Options-Parameter der Execute-Methode der Objekte Connection und Command enthält Fehler. Der folgende ExecuteOptionEnum-Wert ist fälschlicherweise zweimal aufgeführt. Er sollte nur einmal wie folgt aufgeführt sein: adCmdTable Gibt an, dass ADO "CommandText" als Tabellennamen auswerten soll und eine SQL-Abfrage erzeugen soll, die alle Zeilen der in CommandText genannten Tabelle zurückgibt. Der folgende ExecuteOptionEnum-Wert fehlt in der Liste, existiert jedoch und kann verwendet werden: adCmdFile Gibt an, dass der Provider CommandText als Tabellenname auswerten soll. Die folgenden CommandTypeEnum-Werte fehlen zwar in der Liste, existieren jedoch und können somit verwendet werden: adAsyncFetchNonBlocking Gibt an, dass der Haupt-Thread während des Abrufs nicht blockiert ist. Wenn die erforderliche Zeile nicht abgerufen worden ist, wird die aktuelle Zeile automatisch ans Ende der Datei verschoben. adExecuteNoRecords Gibt an, dass es sich bei CommandText um einen Befehl oder eine gespeicherte Prozedur handelt, der bzw. die keine Zeilen zurückgibt (z. B. ein Befehl zum Einfügen von Daten). Werden Zeilen abgerufen, werden diese verworfen und nicht zurückgegeben. Wird immer mit adCmdText oder adCmdStoredProc kombiniert. 4.13 Die Liste der QueryType Enum-Werte für die OpenSchema-Methode eines Connection-Objekts enthält Fehler. Die folgenden Werte fehlen zwar in der Liste, existieren jedoch und können somit verwendet werden: Enum Spalten für Einschränkung adSchemaDBInfoKeywords Keine adSchemaDBInfoLiterals Keine adSchemaCubes CATALOG_NAME SCHEMA_NAME CUBE_NAME adSchemaDimensions CATALOG_NAME SCHEMA_NAME CUBE_NAME DIMENSION_NAME DIMENSION_UNIQUE_NAME adSchemaHierarchies CATALOG_NAME SCHEMA_NAME CUBE_NAME DIMENSION_UNIQUE_NAME HIERARCHY_NAME HIERARCHY_UNIQUE_NAME adSchemaLevels CATALOG_NAME SCHEMA_NAME CUBE_NAME DIMENSION_UNIQUE_NAME HIERARCHY_UNIQUE_NAME LEVEL_NAME LEVEL_UNIQUE_NAME adSchemaMeasures CATALOG_NAME SCHEMA_NAME CUBE_NAME MEASURE_NAME MEASURE_UNIQUE_NAME adSchemaProperties CATALOG_NAME SCHEMA_NAME CUBE_NAME DIMENSION_UNIQUE_NAME HIERARCHY_UNIQUE_NAME LEVEL_UNIQUE_NAME MEMBER_UNIQUE_NAME PROPERTY_TYPE PROPERTY_NAME adSchemaMembers CATALOG_NAME SCHEMA_NAME CUBE_NAME DIMENSION_UNIQUE_NAME HIERARCHY_UNIQUE_NAME LEVEL_UNIQUE_NAME LEVEL_NUMBER MEMBER_NAME MEMBER_UNIQUE_NAME MEMBER_CAPTION MEMBER_TYPE Baumoperator (siehe unten) Beachten Sie bitte, dass die letztgenannten sieben Enum-Werte (von adSchemaCubes bis adSchemaMembers) bei multidimensionalen Datenprovidern verwendet werden sollten. Weitere Informationen einschließlich der Definition der Baumoperator-Einschränkung von adSchemaMembers finden Sie im Buch "OLE DB for OLAP Programmer's Reference". 4.10 Die AffectEnum-Werte, die im ActiveX Data Objects-Programmierhandbuch unter dem Thema "CancelBatch-Methode" aufgeführt sind, enthalten einen Fehler. Die folgenden Werte fehlen zwar in der Liste, existieren jedoch und können somit verwendet werden: adAffectAllChapters Anstehende Änderungen für alle Kapitel abbrechen. 4.15 Der adModeShareDenyNone ConnectModeEnum-Wert wurde im Abschnitt zur Mode-Eigenschaft falsch beschrieben. Die Beschreibung des Wertes sollte wie folgt lauten: adModeShareDenyNone Ermöglicht es Dritten, Verbindungen mit jeder Art von Berechtigung herzustellen. Es kann weder der Schreib- noch der Lesezugriff Dritten verweigert werden. 4.16 Die Index-Eigenschaft hat früher einen Fehler zurückgegeben, wenn auf dem Objekt "Recordset" kein Index festgelegt wurde. Gemäß ADO 2.1 in MDAC 2.1 Service Pack 1 gibt sie einen leeren String ohne Fehler zurück.