----------------------------------------------------------------
Microsoft(R) OLE DB Provider für SQL Server 7.00.459 - Infodatei
----------------------------------------------------------------

(c) 1998 Microsoft Corporation. Alle Rechte vorbehalten.

Dieses Dokument enthält aktuelle sowie allgemeine Informationen, die 
als Ergänzung zur Dokumentation zu Microsoft OLE DB Provider für SQL 
Server dienen.

------
INHALT
------

1. PRODUKTBESCHREIBUNG
   
2. TECHNISCHE HINWEISE

----------------------
1. PRODUKTBESCHREIBUNG 
----------------------
SQLOLEDB, der Microsoft OLE DB Provider für SQL Server, bietet 
Benutzern Schnittstellen, um auf Daten auf einem oder mehreren SQL 
Servern zuzugreifen.

----------------------
2. TECHNISCHE HINWEISE
----------------------

2.1 Änderungen der SQLOLEDB-Eigenschaften

Beachten Sie die folgenden Änderungen der SQLOLEDB-Eigenschaften:

* Die Eigenschaft DBPROP_INIT_DATASOURCE wird jetzt zur Angabe 
eines Servernamens verwendet, der SQL Server ausführt. Die 
Eigenschaft wird nicht mehr zur Angabe eines Datenbanknamens 
verwendet.

* Die Eigenschaft DBPROP_INIT_CATALOG wird jetzt zur Angabe der 
anfänglichen Datenbank verwendet.

* Die Eigenschaft DBPROP_INIT_LOCATION wird nicht mehr unterstützt.

* Die neue Version unterstützt die Eigenschaft DBPROP_AUTH_INTEGRATED. 
Wenn für DBPROP_AUTH_INTEGRATED 'SSPI' festgelegt wurde, wird integrierte
Sicherheit verwendet.
Wenn Null-BSTR-Zeiger festgelegt wurde, wird SQL Server-Sicherheit verwendet.

* Die Eigenschaft SSPROP_AUTH_TRUSTEDCONNECTION wird nicht mehr unterstützt.

* Die Provider-spezifische Eigenschaft DBPROP_INIT_MODE wird nicht mehr 
unterstützt.

2.2
Beim Versuch, einen Befehl an einer Verbindung auszuführen, an der gerade 
ein Befehl ausgeführt wird, erstellt SQLOLEDB eine neue Verbindung zur 
Verarbeitung des neuen Befehls, wenn folgende Bedingungen zutreffen:

*  für DBPROP_MULTIPLECONNECTIONS wurde der Wert VARIANT_TRUE festgelegt.
*  der erste Befehl hat keine Zeilengruppe erstellt oder keinen Servercursor 
verwendet.
*  die Verbindung hat keine aktive Transaktion.

Wenn die Verbindung eine aktive Transaktion hat, wird beim Versuch, einen 
zweiten Befehl auszuführen, E_FAIL zurückgegeben. Wenn keine aktive 
Transaktion vorliegt, jedoch für DBPROP_MULTIPLECONNECTIONS der Wert 
VARIANT_FALSE festgelegt wurde, wird beim Versuch, einen zweiten Befehl 
auszuführen, DB_E_OBJECTOPEN zurückgegeben.

SQL Server verwaltet Transaktionen und Sperrungen für jede Verbindung 
einzeln. Wenn eine zweite Verbindung hergestellt wird, verwenden die 
Befehle der separaten Verbindung Sperrungen nicht gemeinsam. Achten Sie 
darauf, daß sich Befehle nicht gegenseitig blockieren, indem sie Zeilen 
sperren, die von dem anderen Befehl angefordert werden.

2.3
Um den Netzwerkverkehr zu reduzieren und damit die Leistung zu verbessern, 
ruft SQLOLEDB nicht automatisch Parameterinformationen ab, es sei denn, 
vor dem Ausführen eines Befehls wird ICommandWithParameters::GetParameterInfo 
oder ICommandPrepare::Prepare aufgerufen. Das bedeutet, daß SQLOLEDB die 
folgenden Vorgänge nicht automatisch ausführt:

* Überprüfen der Richtigkeit des Datentyps, der mit 
ICommandWithParameters::SetParameterInfo angegeben wurde.
* Zuordnen des DBTYPE, der in den Bindungsinformationen des Zugriffsberechtigten 
angegeben wurde, um den SQL-Datentyp für den Parameter zu korrigieren.

Bei Verwendung dieser Methode erhalten Anwendungen u.U. Fehler oder verlieren 
an Genauigkeit, wenn sie Datentypen angeben, die nicht mit dem SQL-Datentyp 
des Parameters kompatibel sind.

Zur Vermeidung dieser Situation sollte die Anwendung:

* beim Hardcoding von ICommandWithParameters::SetParameterInfo sicherstellen, 
daß pwszDataSourceType mit dem SQL-Datentyp für den Parameter übereinstimmt.
* beim Hardcoding eines Zugriffsberechtigten sicherstellen, daß der an den 
Parameter gebundene DBTYPE derselbe Typ wie der SQL-Datentyp für den Parameter ist.
* die Anwendung kodieren, damit sie ICommandWithParameters::GetParameterInfo 
aufruft und der Provider die SQL-Datentypen der Parameter dynamisch abrufen 
kann. Hierdurch wird ein zusätzlicher Netzwerkumlauf zum Server verursacht.

2.4
DBPROP_CHANGEINSERTEDROWS kann nur auf VARIANT_TRUE gesetzt werden, wenn 
der Zeilensatz einen treffermengengesteuerten Cursor verwendet.


