Freigeben über


Microsoft OLE DB Provider for SQL Server

Gilt für: Access 2013, Office 2013

SQLOLEDB, der OLE DB-Anbieter für SQL Server, ermöglicht ADO den Zugriff auf Microsoft SQL Server.

Verbindungszeichenfolgen-Parameter

Um eine Verbindung mit diesem Anbieter herzustellen, legen Sie das Provider-Argument der ConnectionString-Eigenschaft fest auf:

 
SQLOLEDB 

Dieser Wert kann auch mithilfe der Provider-Eigenschaft gesetzt oder gelesen werden.

Typische Verbindungszeichenfolge

Eine typische Verbindungszeichenfolge für diesen Anbieter lautet:

 
"Provider=SQLOLEDB;Data Source=serverName;" 
Initial Catalog=databaseName; 
User ID=userName;Password=userPassword;" 

Die Zeichenfolge besteht aus den folgenden Schlüsselwörtern:

Schlüsselwort

Beschreibung

Provider

Gibt den OLE DB-Anbieter für SQL Server an.

Data Source oder Server

Gibt den Namen eines Servers an.

Initial Catalog oder Database

Gibt den Namen einer Datenbank auf dem Server an.

User ID oder uid

Gibt den Benutzernamen (für die SQL Server-Authentifizierung) an.

Password oder pwd

Gibt das Benutzerkennwort (für die SQL Server-Authentifizierung) an.

Anbieterspezifische Verbindungsparameter

Der Anbieter unterstützt neben den von ADO definierten verschiedene anbieterspezifische Verbindungsparameter. Wie die ADO-Verbindungseigenschaften können diese anbieterspezifischen Eigenschaften über die Properties-Auflistung eines Connection-Objekts oder als Teil der ConnectionString-Eigenschaft festgelegt werden.

Parameter

Beschreibung

Trusted_connection

Gibt den Benutzerauthentifizierungsmodus an. Dieser kann auf Yes oder No gesetzt werden. Der Standardwert ist No. Wenn diese Eigenschaft auf Yes gesetzt ist, verwendet SQLOLEDB den Microsoft Windows NT-Authentifizierungsmodus, um den Benutzerzugriff auf die in den Eigenschaftswerten Location und Datasource angegebene SQL Server-Datenbank zu autorisieren. Wenn diese Eigenschaft auf No gesetzt ist, verwendet SQLOLEDB den gemischten Modus, um den Benutzerzugriff auf die SQL Server-Datenbank zu autorisieren. Der Anmeldename und das Kennwort für SQL Server sind in den Eigenschaften User Id und Password angegeben.

Current Language

Gibt den Namen einer SQL Server-Sprache an. Erkennt die Sprache, die für die Auswahl und Formatierung von Systemmeldungen verwendet wird. Die Sprache muss auf dem Computer mit SQL Server installiert sein, da die Verbindung sonst nicht geöffnet werden kann.

Network Address

Gibt die Netzwerkadresse des Computers mit SQL Server an, die in der Location-Eigenschaft angegeben ist.

Network Library

Gibt den Namen der Netzwerkbibliothek (Dynamic Link Libraries) an, die für die Kommunikation mit dem Computer mit SQL Server verwendet wird. Der Name darf weder den Pfad noch die Dateinamenerweiterung (DLL) enthalten. Der Standardwert wird von der SQL Server Clientkonfiguration bereitgestellt.

Use Procedure for Prepare

Gibt an, ob SQL Server temporäre gespeicherte Prozeduren erstellt, wenn Befehle (von der Prepared-Eigenschaft) vorbereitet werden.

Auto Translate

Gibt an, ob OEM/ANSI-Zeichen konvertiert werden. Diese Eigenschaft kann auf True oder False festgelegt werden. Der Standardwert lautet True. Wenn diese Eigenschaft auf True festgelegt ist, konvertiert SQLOLEDB OEM/ANSI-Zeichen beim Empfangen oder Senden von Mehrbyte-Zeichenfolgen von oder an den Computer mit SQL Server. Wenn diese Eigenschaft auf False festgelegt ist, konvertiert SQLOLEDB OEM/ANSI-Zeichen in Daten mit Mehrbyte-Zeichenfolgen nicht.

Packet Size

Gibt eine Netzwerkpaketgröße in Bytes an. Der Wert für die Eigenschaft der Paketgröße muss zwischen 512 und 32767 liegen. Der Standardwert für die Größe von SQLOLEDB-Netzwerkpaketen beträgt 4096.

Application Name

Gibt den Namen der Clientanwendung an.

Workstation ID

Eine Zeichenfolge, die die Arbeitsstation identifiziert.

Verwendung des Command-Objekts

SQLOLEDB akzeptiert eine Mischung aus ODBC, ANSI und SQL Server-spezifischem Transact-SQL als gültige Syntax. In der folgenden SQL-Anweisung wird beispielsweise eine ODBC SQL-Escapesequenz zum Angeben der LCASE-Zeichenfolgenfunktion verwendet:

 
SELECT customerid={fn LCASE(CustomerID)} FROM Customers 

LCASE gibt eine Zeichenfolge zurück, wobei alle Großbuchstaben in die entsprechenden Kleinbuchstaben konvertiert werden. Die ANSI-SQL-Zeichenfolgenfunktion LOWER führt den gleichen Vorgang aus, sodass die folgende SQL-Anweisung eine ANSI-Entsprechung zur oben dargestellten ODBC-Anweisung ist:

 
SELECT customerid=LOWER(CustomerID) FROM Customers 

SQLOLEDB verarbeitet beide Formen der Anweisung, sofern diese als Text für einen Befehl angegeben ist.

Gespeicherte Prozeduren

Verwenden Sie beim Ausführen einer gespeicherten SQL Server-Prozedur mit einem SQLOLEDB-Befehl die Escapesequenz des ODBC-Prozeduraufrufs im Befehlstext. SQLOLEDB verwendet dann den Remoteprozeduraufruf von SQL Server, um die Befehlsverarbeitung zu optimieren. So sollte beispielsweise die folgende ODBC SQL-Anweisung anstelle der Transact-SQL-Anweisung als Befehlstext verwendet werden:

ODBC SQL

 
{call SalesByCategory('Produce', '1995')} 

Transact-SQL

 
EXECUTE SalesByCategory 'Produce', '1995' 

Recordset-Verhalten

SQLOLEDB kann keine SQL Server-Cursor verwenden, um die mehrfachen Ergebnisse, die von mehreren Befehlen generiert werden, zu unterstützen. Wenn ein Consumer eine Datensatzgruppe anfordert und die Unterstützung von SQL Server-Cursor erforderlich ist, tritt ein Fehler auf, sofern der verwendete Befehlstext mehrere Datensatzgruppen als Ergebnis generiert.

SQL Server-Cursor unterstützen scrollfähige SQLOLEDB-Datensatzgruppen. SQL Server legt Einschränkungen für Cursor fest, die von Änderungen abhängen, die andere Benutzer an der Datenbank vornehmen. So können insbesondere die Zeilen in einigen Cursorn nicht sortiert werden, und beim Erstellen einer Datensatzgruppe mit einem Befehl, der eine ORDER BY-Klausel von SQL enthält, tritt möglicherweise ein Fehler auf.

Dynamische Eigenschaften

Der Microsoft OLE DB-Anbieter für SQL Server fügt verschiedene Eigenschaften in die Properties -Auflistung der nicht geöffneten Objekte Connection, Recordset und Command ein.

Bei den folgenden Tabellen handelt es sich um ein Cross-Index-System der ADO- und OLE DB-Namen für alle dynamischen Eigenschaften. Die OLE DB-Programmierreferenz bezieht sich auf einen ADO-Eigenschaftsnamen durch den Begriff "Beschreibung". Weitere Informationen zu diesen Eigenschaften finden Sie in der OLE DB-Programmierreferenz. Suchen Sie im Index nach dem OLE DB-Eigenschaftennamen, oder lesen Sie Appendix C: OLE DB Properties.

Dynamische Eigenschaften von "Connection"

Die folgenden Eigenschaften werden der Properties-Auflistung des Connection-Objekts hinzugefügt.

ADO-Eigenschaftenname

OLE DB-Eigenschaftenname

Active Sessions

DBPROP_ACTIVESESSIONS

Asynchable Abort

DBPROP_ASYNCTXNABORT

Asynchable Commit

DBPROP_ASYNCTNXCOMMIT

Autocommit Isolation Levels

DBPROP_SESS_AUTOCOMMITISOLEVELS

Catalog Location

DBPROP_CATALOGLOCATION

Catalog Term

DBPROP_CATALOGTERM

Column Definition

DBPROP_COLUMNDEFINITION

Connect Timeout

DBPROP_INIT_TIMEOUT

Current Catalog

DBPROP_CURRENTCATALOG

Data Source

DBPROP_INIT_DATASOURCE

Data Source Name

DBPROP_DATASOURCENAME

Data Source Object Threading Model

DBPROP_DSOTHREADMODEL

DBMS Name

DBPROP_DBMSNAME

DBMS Version

DBPROP_DBMSVER

Extended Properties

DBPROP_INIT_PROVIDERSTRING

GROUP BY Support

DBPROP_GROUPBY

Heterogeneous Table Support

DBPROP_HETEROGENEOUSTABLES

Identifier Case Sensitivity

DBPROP_IDENTIFIERCASE

Initial Catalog

DBPROP_INIT_CATALOG

Isolation Levels

DBPROP_SUPPORTEDTXNISOLEVELS

Isolation Retention

DBPROP_SUPPORTEDTXNISORETAIN

Locale Identifier

DBPROP_INIT_LCID

Maximum Index Size

DBPROP_MAXINDEXSIZE

Maximum Row Size

DBPROP_MAXROWSIZE

Maximum Row Size Includes BLOB

DBPROP_MAXROWSIZEINCLUDESBLOB

Maximum Tables in SELECT

DBPROP_MAXTABLESINSELECT

Multiple Parameter Sets

DBPROP_MULTIPLEPARAMSETS

Multiple Results

DBPROP_MULTIPLERESULTS

Multiple Storage Objects

DBPROP_MULTIPLESTORAGEOBJECTS

Multi-Table Update

DBPROP_MULTITABLEUPDATE

NULL Collation Order

DBPROP_NULLCOLLATION

NULL Concatenation Behavior

DBPROP_CONCATNULLBEHAVIOR

OLE DB Version

DBPROP_PROVIDEROLEDBVER

OLE Object Support

DBPROP_OLEOBJECTS

Open Rowset Support

DBPROP_OPENROWSETSUPPORT

ORDER BY Columns in Select List

DBPROP_ORDERBYCOLUMNSINSELECT

Output Parameter Availability

DBPROP_OUTPUTPARAMETERAVAILABILITY

Pass By Ref Accessors

DBPROP_BYREFACCESSORS

Password

DBPROP_AUTH_PASSWORD

Persist Security Info

DBPROP_AUTH_PERSIST_SENSITIVE_AUTHINFO

Persistent ID Type

DBPROP_PERSISTENTIDTYPE

Prepare Abort Behavior

DBPROP_PREPAREABORTBEHAVIOR

Prepare Commit Behavior

DBPROP_PREPARECOMMITBEHAVIOR

Procedure Term

DBPROP_PROCEDURETERM

Prompt

DBPROP_INIT_PROMPT

Provider Friendly Name

DBPROP_PROVIDERFRIENDLYNAME

Provider Name

DBPROP_PROVIDERFILENAME

Provider Version

DBPROP_PROVIDERVER

Read-Only Data Source

DBPROP_DATASOURCEREADONLY

Rowset Conversions on Command

DBPROP_ROWSETCONVERSIONSONCOMMAND

Schema Term

DBPROP_SCHEMATERM

Schema Usage

DBPROP_SCHEMAUSAGE

SQL Support

DBPROP_SQLSUPPORT

Structured Storage

DBPROP_STRUCTUREDSTORAGE

Subquery Support

DBPROP_SUBQUERIES

Table Term

DBPROP_TABLETERM

Transaction DDL

DBPROP_SUPPORTEDTXNDDL

User ID

DBPROP_AUTH_USERID

User Name

DBPROP_USERNAME

Window Handle

DBPROP_INIT_HWND

Dynamische Eigenschaften von "Recordset"

Die folgenden Eigenschaften werden der Properties-Auflistung des Recordset-Objekts hinzugefügt.

ADO-Eigenschaftenname

OLE DB-Eigenschaftenname

Access Order

DBPROP_ACCESSORDER

Blocking Storage Objects

DBPROP_BLOCKINGSTORAGEOBJECTS

Bookmark Type

DBPROP_BOOKMARKTYPE

Bookmarkable

DBPROP_IROWSETLOCATE

Change Inserted Rows

DBPROP_CHANGEINSERTEDROWS

Column Privileges

DBPROP_COLUMNRESTRICT

Column Set Notification

DBPROP_NOTIFYCOLUMNSET

Command Time Out

DBPROP_COMMANDTIMEOUT

Defer Column

DBPROP_DEFERRED

Delay Storage Object Updates

DBPROP_DELAYSTORAGEOBJECTS

Fetch Backwards

DBPROP_CANFETCHBACKWARDS

Hold Rows

DBPROP_CANHOLDROWS

IAccessor

DBPROP_IAccessor

Icolumnsinfo

DBPROP_IColumnsInfo

Icolumnsrowset

DBPROP_IColumnsRowset

Iconnectionpointcontainer

DBPROP_IConnectionPointContainer

IConvertType

DBPROP_IConvertType

Immobile Rows

DBPROP_IMMOBILEROWS

IRowset

DBPROP_IRowset

Irowsetchange

Dbprop_irowsetchange

IRowsetIdentity

DBPROP_IRowsetIdentity

Irowsetinfo

DBPROP_IRowsetInfo

Irowsetlocate

DBPROP_IRowsestLocate

IRowsetResynch

IRowsetScroll

DBPROP_IRowsetScroll

IRowsetUpdate

DBPROP_IRowsetUpdate

Isequentialstream

DBPROP_ISequentialStream

Isupporterrorinfo

DBPROP_ISupportErrorInfo

Literal Bookmarks

DBPROP_LITERALBOOKMARKS

Literal Row Identity

DBPROP_LITERALIDENTITY

Maximum Open Rows

DBPROP_MAXOPENROWS

Maximum Pending Rows

DBPROP_MAXPENDINGROWS

Maximum Rows

DBPROP_MAXROWS

Notification Granularity

DBPROP_NOTIFICATIONGRANULARITY

Notification Phases

DBPROP_NOTIFICATIONPHASES

Objects Transacted

DBPROP_TRANSACTEDOBJECT

Others' Changes Visible

DBPROP_OTHERUPDATEDELETE

Others' Inserts Visible

DBPROP_OTHERINSERT

Own Changes Visible

DBPROP_OWNUPDATEDELETE

Own Inserts Visible

DBPROP_OWNINSERT

Preserve on Abort

DBPROP_ABORTPRESERVE

Preserve on Commit

DBPROP_COMMITPRESERVE

Quick Restart

DBPROP_QUICKRESTART

Reentrant Events

DBPROP_REENTRANTEVENTS

Remove Deleted Rows

DBPROP_REMOVEDELETED

Report Multiple Changes

DBPROP_REPORTMULTIPLECHANGES

Return Pending Inserts

DBPROP_RETURNPENDINGINSERTS

Row Delete Notification

DBPROP_NOTIFYROWDELETE

Row First Change Notification

DBPROP_NOTIFYROWFIRSTCHANGE

Row Insert Notification

DBPROP_NOTIFYROWINSERT

Row Privileges

DBPROP_ROWRESTRICT

Row Resynchronization Notification

DBPROP_NOTIFYROWRESYNCH

Row Threading Model

DBPROP_ROWTHREADMODEL

Row Undo Change Notification

DBPROP_NOTIFYROWUNDOCHANGE

Row Undo Delete Notification

DBPROP_NOTIFYROWUNDODELETE

Row Undo Insert Notification

DBPROP_NOTIFYROWUNDOINSERT

Row Update Notification

DBPROP_NOTIFYROWUPDATE

Rowset Fetch Position Change Notification

DBPROP_NOTIFYROWSETFETCHPOSISIONCHANGE

Rowset Release Notification

DBPROP_NOTIFYROWSETRELEASE

Scroll Backwards

DBPROP_CANSCROLLBACKWARDS

Server Cursor

DBPROP_SERVERCURSOR

Skip Deleted Bookmarks

DBPROP_BOOKMARKSKIPPED

Strong Row Identity

DBPROP_STRONGITDENTITY

Unique Rows

DBPROP_UNIQUEROWS

Updatability

DBPROP_UPDATABILITY

Use Bookmarks

DBPROP_BOOKMARKS

Dynamische Eigenschaften von "Command"

Die folgenden Eigenschaften werden der Properties-Auflistung des Command-Objekts hinzugefügt.

ADO-Eigenschaftenname

OLE DB-Eigenschaftenname

Access Order

DBPROP_ACCESSORDER

Base Path

SSPROP_STREAM_BASEPATH

Blocking Storage Objects

DBPROP_BLOCKINGSTORAGEOBJECTS

Bookmark Type

DBPROP_BOOKMARKTYPE

Bookmarkable

DBPROP_IROWSETLOCATE

Change Inserted Rows

DBPROP_CHANGEINSERTEDROWS

Column Privileges

DBPROP_COLUMNRESTRICT

Column Set Notification

DBPROP_NOTIFYCOLUMNSET

Content Type

SSPROP_STREAM_CONTENTTYPE

Cursor Auto Fetch

SSPROP_CURSORAUTOFETCH

Defer Column

DBPROP_DEFERRED

Defer Prepare

SSPROP_DEFERPREPARE

Delay Storage Object Updates

DBPROP_DELAYSTORAGEOBJECTS

Fetch Backwards

DBPROP_CANFETCHBACKWARDS

Hold Rows

DBPROP_CANHOLDROWS

IAccessor

DBPROP_IAccessor

Icolumnsinfo

DBPROP_IColumnsInfo

Icolumnsrowset

DBPROP_IColumnsRowset

Iconnectionpointcontainer

DBPROP_IConnectionPointContainer

IConvertType

DBPROP_IConvertType

Immobile Rows

DBPROP_IMMOBILEROWS

IRowset

DBPROP_IRowset

Irowsetchange

Dbprop_irowsetchange

IRowsetIdentity

DBPROP_IRowsetIdentity

Irowsetinfo

DBPROP_IRowsetInfo

Irowsetlocate

DBPROP_IRowsetLocate

IRowsetResynch

DBPROP_IRowsetResynch

IRowsetScroll

DBPROP_IRowsetScroll

IRowsetUpdate

DBPROP_IRowsetUpdate

Isequentialstream

DBPROP_ISequentialStream

Isupporterrorinfo

DBPROP_ISupportErrorInfo

Literal Bookmarks

DBPROP_LITERALBOOKMARKS

Literal Row Identity

DBPROP_LITERALIDENTITY

Lock Mode

DBPROP_LOCKMODE

Maximum Open Rows

DBPROP_MAXOPENROWS

Maximum Pending Rows

DBPROP_MAXPENDINGROWS

Maximum Rows

DBPROP_MAXROWS

Notification Granularity

DBPROP_NOTIFICATIONGRANULARITY

Notification Phases

DBPROP_NOTIFICATIONPHASES

Objects Transacted

DBPROP_TRANSACTEDOBJECT

Others' Changes Visible

DBPROP_OTHERUPDATEDELETE

Others' Inserts Visible

DBPROP_OTHERINSERT

Output Encoding Property

DBPROP_OUTPUTENCODING

Output Stream Property

DBPROP_OUTPUTSTREAM

Own Changes Visible

DBPROP_OWNUPDATEDELETE

Own Inserts Visible

DBPROP_OWNINSERT

Preserve on Abort

DBPROP_ABORTPRESERVE

Preserve on Commit

DBPROP_COMMITPRESERVE

Quick Restart

DBPROP_QUICKRESTART

Reentrant Events

DBPROP_REENTRANTEVENTS

Remove Deleted Rows

DBPROP_REMOVEDELETED

Report Multiple Changes

DBPROP_REPORTMULTIPLECHANGES

Return Pending Inserts

DBPROP_RETURNPENDINGINSERTS

Row Delete Notification

DBPROP_NOTIFYROWDELETE

Row First Change Notification

DBPROP_NOTIFYROWFIRSTCHANGE

Row Insert Notification

DBPROP_NOTIFYROWINSERT

Row Privileges

DBPROP_ROWRESTRICT

Row Resynchronization Notification

DBPROP_NOTIFYROWRESYNCH

Row Threading Model

DBPROP_ROWTHREADMODEL

Row Undo Change Notification

DBPROP_NOTIFYROWUNDOCHANGE

Row Undo Delete Notification

DBPROP_NOTIFYROWUNDODELETE

Row Undo Insert Notification

DBPROP_NOTIFYROWUNDOINSERT

Row Update Notification

DBPROP_NOTIFYROWUPDATE

Rowset Fetch Position Change Notification

DBPROP_NOTIFYROWSETFETCHPOSITIONCHANGE

Rowset Release Notification

DBPROP_NOTIFYROWSETRELEASE

Scroll Backwards

DBPROP_CANSCROLLBACKWARDS

Server Cursor

DBPROP_SERVERCURSOR

Server Data on Insert

DBPROP_SERVERDATAONINSERT

Skip Deleted Bookmarks

DBPROP_BOOKMARKSKIP

Strong Row Identity

DBPROP_STRONGIDENTITY

Updatability

DBPROP_UPDATABILITY

Use Bookmarks

DBPROP_BOOKMARKS

XML Root

SSPROP_STREAM_XMLROOT

XSL

SSPROP_STREAM_XSL

Weitere Informationen zur Implementierung und zur Funktionsweise des Microsoft OLE DB-Anbieters für SQL Server finden Sie in der Dokumentation zu OLE DB-Anbieter für SQL Server im Abschnitt "OLE DB" im MDAC SDK.