Compartir a través de


Proveedor de Microsoft OLE DB para SQL Server

Se aplica a: Access 2013, Office 2013

El Proveedor de Microsoft OLE DB para SQL Server, SQLOLEDB, permite que ADO obtenga acceso a Microsoft SQL Server.

Parámetros de la cadena de conexión

Para conectarse a este proveedor, establezca el argumento Provider de la propiedad ConnectionString en:

 
SQLOLEDB 

Este valor también puede establecerse o leerse mediante la propiedad Provider.

Cadena de conexión típica

Una típica cadena de conexión de este proveedor es:

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

La cadena consta de estas palabras clave:

Palabra clave

Descripción

Provider

Especifica el Proveedor OLE DB para SQL Server.

Data Source o Server

Especifica el nombre de un servidor.

Initial Catalog o Database

Especifica el nombre de una base de datos del servidor.

User ID o uid

Especifica el nombre de usuario (para autenticación de SQL Server).

Password o pwd

Especifica la contraseña de usuario (para autenticación de SQL Server).

Parámetros de conexión específicos del proveedor

El proveedor admite varios parámetros de conexión específicos del proveedor además de los definidos por ADO. Al igual que las propiedades de conexión ADO, estas propiedades específicas del proveedor se pueden establecer mediante la colección Properties de un objeto Connection o como parte de ConnectionString.

Parámetro

Descripción

Trusted_Connection

Indica el modo de autenticación del usuario. Puede establecerse en Yes o No. El valor predeterminado es No. Si esta propiedad se establece en Yes, SQLOLEDB utiliza el modo de autenticación de Microsoft Windows NT para autorizar el acceso del usuario a la base de datos de SQL Server especificada por los valores de las propiedades Location y Datasource. Si esta propiedad se establece en No, SQLOLEDB utiliza un modo mixto para autorizar el acceso del usuario a la base de datos de SQL Server. El inicio de sesión y la contraseña de SQL Server se especifican en las propiedades User ID y Password.

Current Language

Indica un nombre de idioma de SQL Server. Identifica el idioma utilizado para la selección de mensajes del sistema y el formato. El idioma debe estar instalado en el servidor SQL Server, de lo contrario, se producirá un error al establecer la conexión.

Network Address

Indica la dirección de red del servidor SQL Server especificado mediante la propiedad Location.

Network Library

Indica el nombre de la biblioteca de red (bibliotecas de vínculos dinámicos) usada para comunicarse con el servidor SQL Server. El nombre no debe incluir la ruta de acceso ni la extensión de nombre de archivo .dll. La configuración del cliente SQL Server proporciona el valor predeterminado.

Use Procedure for Prepare

Determina si SQL Server crea procedimientos almacenados temporales cuando se preparan los comandos (por parte de la propiedad Prepared).

Auto Translate

Indica si se convierten los caracteres OEM/ANSI. Esta propiedad se puede establecer en True o False. El valor predeterminado es True. Si esta propiedad se establece en True, SQLOLEDB realiza la conversión de caracteres OEM/ANSI cuando se recuperan las cadenas de caracteres de varios bytes del servidor SQL Server o se envían a éste. Si la propiedad se establece en False, SQLOLEDB no realiza la conversión de caracteres OEM/ANSI en los datos de las cadenas de caracteres de varios bytes.

Packet Size

Indica un tamaño de paquete de red en bytes. El valor de esta propiedad debe estar entre 512 y 32767. El tamaño predeterminado del paquete de red SQLOLEDB es 4096.

Application Name

Indica el nombre de la aplicación cliente.

Workstation ID

Una cadena que identifica a la estación de trabajo.

Uso del objeto Command

SQLOLEDB acepta una mezcla de ODBC, ANSI y Transact-SQL específico de SQL Server como sintaxis válida. Por ejemplo, en la siguiente instrucción SQL se usa una secuencia de escape de SQL ODBC para especificar la función de cadena LCASE:

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

LCASE devuelve una cadena de caracteres convirtiendo todos los caracteres en mayúscula a sus equivalentes en minúscula. La función de cadena SQL ANSI LOWER realiza la misma operación, así que la siguiente instrucción SQL es un equivalente ANSI de la instrucción ODBC mostrada arriba:

 
SELECT customerid=LOWER(CustomerID) FROM Customers 

SQLOLEDB procesa correctamente cualquier forma de la instrucción cuando se especifica como texto de un comando.

Procedimientos almacenados

Cuando ejecute un procedimiento almacenado de SQL Server mediante un comando SQLOLEDB, utilice la secuencia de escape de llamada al procedimiento ODBC en el texto del comando. SQLOLEDB utiliza el mecanismo de llamada al procedimiento remoto de SQL Server para optimizar el procesamiento del comando. Por ejemplo, la siguiente instrucción SQL ODBC es el texto de comando que se prefiere sobre el formato Transact-SQL:

SQL ODBC

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

Transact-SQL

 
EXECUTE SalesByCategory 'Produce', '1995' 

Comportamiento del objeto Recordset

SQLOLEDB no puede usar cursores de SQL Server para admitir la variedad de resultados generados por los diversos comandos. Si un usuario solicita un conjunto de registros que necesita compatibilidad con los cursores de SQL Server, se produce un error si el texto del comando utilizado genera más de un único conjunto de registros como resultado.

Los conjuntos de registros SQLOLEDB desplazables son admitidos por los cursores de SQL Server. SQL Server impone limitaciones sobre los cursores sensibles a los cambios realizados por otros usuarios de la base de datos. Específicamente, no es posible ordenar las filas de algunos cursores y se puede producir un error cuando se intenta crear un conjunto de registros mediante un comando que contiene una cláusula ORDER BY de SQL.

Propiedades dinámicas

El Proveedor de Microsoft OLE DB para SQL Server inserta varias propiedades dinámicas en la colección Properties de los objetos Connection, Recordset y Command sin abrir.

Las tablas siguientes son un índice cruzado de los nombres ADO y OLE DB de cada propiedad dinámica. La referencia del programador de OLE DB hace referencia a un nombre de propiedad de ADO con el término "Descripción". Puede encontrar más información sobre estas propiedades en la Referencia del programador de OLE DB. Busque el nombre de propiedad de OLE DB en el Índice o vea el Apéndice C: Propiedades de OLE DB.

Propiedades dinámicas de Connection

Las propiedades siguientes se agregan a la colección Properties del objeto Connection.

Nombre de propiedad de ADO

Nombre de propiedad de OLE DB

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

Propiedades dinámicas del objeto Recordset

Las propiedades siguientes se agregan a la colección Properties del objeto Recordset.

Nombre de propiedad de ADO

Nombre de propiedad de OLE DB

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

Propiedades dinámicas de Command

Las propiedades siguientes se agregan a la colección Properties del objeto Command.

Nombre de propiedad de ADO

Nombre de propiedad de OLE DB

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

Para obtener detalles específicos sobre la implementación e información funcional acerca de Proveedor de Microsoft OLE DB para SQL Server, vea la documentación del Proveedor OLE DB para SQL Server de la sección OLE DB del paquete MDAC SDK.