Поделиться через


Поставщик Microsoft OLE DB для SQL Server

Область применения: Access 2013, Office 2013

Поставщик Microsoft OLE DB для SQL Server SQLOLEDB позволяет ADO получать доступ к microsoft SQL Server.

Параметры строки подключения

Чтобы подключиться к этому поставщику, задайте для аргумента Provider значение свойства ConnectionString :

 
SQLOLEDB 

Это значение также можно задать или считывать с помощью свойства Provider .

Типичная строка подключения

Типичный строка подключения для этого поставщика:

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

Строка состоит из следующих ключевых слов:

Ключевое слово

Описание

Поставщик

Указывает поставщик OLE DB для SQL Server.

Источник данных или сервер

Указывает имя сервера.

Начальный каталог или база данных

Указывает имя базы данных на сервере.

Идентификатор пользователя или uid

Указывает имя пользователя (для проверки подлинности SQL Server).

Пароль или pwd

Указывает пароль пользователя (для проверки подлинности SQL Server).

Параметры подключения Provider-Specific

Поставщик поддерживает несколько параметров подключения для конкретного поставщика в дополнение к параметрам, определенным в ADO. Как и в случае со свойствами подключения ADO, эти свойства поставщика можно задать с помощью коллекции Свойствподключения или как часть ConnectionString.

Параметр

Описание

Trusted_Connection

Указывает режим проверки подлинности пользователя. Для этого параметра можно задать значение Да или Нет. По умолчанию выбрано Нет. Если для этого свойства задано значение Да, SQLOLEDB использует режим проверки подлинности Microsoft Windows NT для авторизации доступа пользователей к базе данных SQL Server, указанной значениями свойств Location и Datasource. Если для этого свойства задано значение Нет, SQLOLEDB использует смешанный режим для авторизации доступа пользователей к базе данных SQL Server. Имя входа и пароль SQL Server указываются в свойствах Идентификатор пользователя и Пароль.

Текущий язык

Указывает имя языка SQL Server. Определяет язык, используемый для выбора и форматирования системных сообщений. Язык должен быть установлен на SQL Server, в противном случае при открытии подключения произойдет сбой.

Сетевой адрес

Указывает сетевой адрес SQL Server, указанный свойством Location.

Сетевая библиотека

Указывает имя сетевой библиотеки (библиотеки динамической компоновки), используемой для связи с SQL Server. Имя не должно содержать путь или расширение имени файла .dll. Значение по умолчанию предоставляется конфигурацией клиента SQL Server.

Использование процедуры подготовки

Определяет, создает ли SQL Server временные хранимые процедуры при подготовке команд (с помощью свойства Prepared).

Автоматический перевод

Указывает, преобразуются ли символы OEM/ANSI. Для этого свойства можно задать значение True или False. Значение по умолчанию — True. Если для этого свойства задано значение True, sqlOLEDB выполняет преобразование символов OEM/ANSI, когда многобайтовые символьные строки извлекаются из SQL Server или отправляются в них. Если для этого свойства задано значение False, SQLOLEDB не выполняет преобразование символов OEM/ANSI для многобайтовых строковых данных символов.

Размер пакета

Указывает размер сетевого пакета в байтах. Значение свойства размер пакета должно находиться в диапазоне от 512 до 32767. Размер сетевого пакета SQLOLEDB по умолчанию — 4096.

Имя приложения

Указывает имя клиентского приложения.

Идентификатор рабочей станции

Строка, определяющая рабочую станцию.

Использование командного объекта

SQLOLEDB принимает амальгаму ODBC, ANSI и SQL Server Transact-SQL в качестве допустимого синтаксиса. Например, следующая инструкция SQL использует escape-последовательность ODBC SQL для указания строковой функции LCASE:

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

LCASE возвращает строку символов, преобразуя все символы в верхнем регистре в их эквиваленты в нижнем регистре. Эта же операция выполняется строковой функцией ANSI SQL LOWER, поэтому следующая инструкция SQL эквивалентна инструкции ODBC, представленной выше:

 
SELECT customerid=LOWER(CustomerID) FROM Customers 

SQLOLEDB успешно обрабатывает любой из форм инструкции при указании в качестве текста для команды.

Хранимые процедуры

При выполнении SQL Server хранимой процедуры с помощью команды SQLOLEDB используйте escape-последовательность вызова процедуры ODBC в тексте команды. Затем SQLOLEDB использует механизм вызова удаленной процедуры SQL Server для оптимизации обработки команд. Например, следующая инструкция ODBC SQL является предпочтительным текстом команды по сравнению с формой Transact-SQL:

ODBC SQL

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

Transact-SQL

 
EXECUTE SalesByCategory 'Produce', '1995' 

Поведение набора записей

SQLOLEDB не может использовать курсоры SQL Server для поддержки множественного результата, создаваемого несколькими командами. Если потребитель запрашивает набор записей, для которого требуется поддержка SQL Server курсора, возникает ошибка, если используемый текст команды создает более одного набора записей в качестве результата.

Прокручиваемые наборы записей SQLOLEDB поддерживаются SQL Server курсорами. SQL Server накладывает ограничения на курсоры, чувствительные к изменениям, внесенным другими пользователями базы данных. В частности, строки в некоторых курсорах не могут быть упорядочены, и попытка создать набор записей с помощью команды, содержащей предложение SQL ORDER BY, может завершиться ошибкой.

Динамические свойства

Поставщик Microsoft OLE DB для SQL Server вставляет несколько динамических свойств в коллекцию Свойств нераскрытых объектов Connection, Recordset и Command.

Следующие таблицы представляют собой перекрестный индекс имен ADO и OLE DB для каждого динамического свойства. Справочник программиста OLE DB ссылается на имя свойства ADO с помощью термина "Описание". Дополнительные сведения об этих свойствах см. в справочнике программиста OLE DB. Найдите имя свойства OLE DB в индексе или см. приложение C: свойства OLE DB.

Динамические свойства подключения

Следующие свойства добавляются в коллекцию Свойств объекта Connection.

Имя свойства ADO

Имя свойства OLE DB

Активные сеансы

DBPROP_ACTIVESESSIONS

Asynchable Abort

DBPROP_ASYNCTXNABORT

Asynchable Commit

DBPROP_ASYNCTNXCOMMIT

Уровни изоляции автоматической зафиксирования

DBPROP_SESS_AUTOCOMMITISOLEVELS

Расположение каталога

DBPROP_CATALOGLOCATION

Термин каталога

DBPROP_CATALOGTERM

Определение столбца

DBPROP_COLUMNDEFINITION

Время ожидания подключения

DBPROP_INIT_TIMEOUT

Текущий каталог

DBPROP_CURRENTCATALOG

Источник данных

DBPROP_INIT_DATASOURCE

Имя источника данных

DBPROP_DATASOURCENAME

Объектная модель потока источника данных

DBPROP_DSOTHREADMODEL

Имя СУБД

DBPROP_DBMSNAME

Версия СУБД

DBPROP_DBMSVER

Расширенные свойства

DBPROP_INIT_PROVIDERSTRING

Поддержка GROUP BY

DBPROP_GROUPBY

Поддержка разнородных таблиц

DBPROP_HETEROGENEOUSTABLES

Чувствительность к регистру идентификатора

DBPROP_IDENTIFIERCASE

Начальный каталог

DBPROP_INIT_CATALOG

Уровни изоляции

DBPROP_SUPPORTEDTXNISOLEVELS

Хранение изоляции

DBPROP_SUPPORTEDTXNISORETAIN

Идентификатор языкового стандарта

DBPROP_INIT_LCID

Максимальный размер индекса

DBPROP_MAXINDEXSIZE

Максимальный размер строки

DBPROP_MAXROWSIZE

Максимальный размер строки включает BLOB-объект

DBPROP_MAXROWSIZEINCLUDESBLOB

Максимальное число таблиц в SELECT

DBPROP_MAXTABLESINSELECT

Несколько наборов параметров

DBPROP_MULTIPLEPARAMSETS

Несколько результатов

DBPROP_MULTIPLERESULTS

Несколько объектов хранилища

DBPROP_MULTIPLESTORAGEOBJECTS

Обновление нескольких таблиц

DBPROP_MULTITABLEUPDATE

Порядок параметров сортировки NULL

DBPROP_NULLCOLLATION

Поведение объединения NULL

DBPROP_CONCATNULLBEHAVIOR

Версия OLE DB

DBPROP_PROVIDEROLEDBVER

Поддержка объектов OLE

DBPROP_OLEOBJECTS

Открытие поддержки набора строк

DBPROP_OPENROWSETSUPPORT

ORDER BY Columns in Select List

DBPROP_ORDERBYCOLUMNSINSELECT

Доступность выходного параметра

DBPROP_OUTPUTPARAMETERAVAILABILITY

Методы доступа Pass by Ref

DBPROP_BYREFACCESSORS

Пароль

DBPROP_AUTH_PASSWORD

Сохранение сведений о безопасности

DBPROP_AUTH_PERSIST_SENSITIVE_AUTHINFO

Тип постоянного идентификатора

DBPROP_PERSISTENTIDTYPE

Подготовка поведения прерывания

DBPROP_PREPAREABORTBEHAVIOR

Подготовка поведения фиксации

DBPROP_PREPARECOMMITBEHAVIOR

Термин процедуры

DBPROP_PROCEDURETERM

Prompt

DBPROP_INIT_PROMPT

Понятное имя поставщика

DBPROP_PROVIDERFRIENDLYNAME

Имя поставщика

DBPROP_PROVIDERFILENAME

Версия поставщика

DBPROP_PROVIDERVER

Источник данных Read-Only

DBPROP_DATASOURCEREADONLY

Преобразования наборов строк в команде

DBPROP_ROWSETCONVERSIONSONCOMMAND

Термин схемы

DBPROP_SCHEMATERM

Использование схемы

DBPROP_SCHEMAUSAGE

Поддержка SQL

DBPROP_SQLSUPPORT

Структурированное хранилище

DBPROP_STRUCTUREDSTORAGE

Поддержка вложенных запросов

DBPROP_SUBQUERIES

Термин таблицы

DBPROP_TABLETERM

Транзакция DDL

DBPROP_SUPPORTEDTXNDDL

Идентификатор пользователя

DBPROP_AUTH_USERID

имя пользователя;

DBPROP_USERNAME

Дескриптор окна

DBPROP_INIT_HWND

Динамические свойства набора записей

Следующие свойства добавляются в коллекцию Свойств объекта Recordset.

Имя свойства ADO

Имя свойства OLE DB

Порядок доступа

DBPROP_ACCESSORDER

Блокировка объектов хранилища

DBPROP_BLOCKINGSTORAGEOBJECTS

Тип закладки

DBPROP_BOOKMARKTYPE

Bookmarkable

DBPROP_IROWSETLOCATE

Изменение вставленных строк

DBPROP_CHANGEINSERTEDROWS

Привилегии столбцов

DBPROP_COLUMNRESTRICT

Уведомление о наборе столбцов

DBPROP_NOTIFYCOLUMNSET

Время ожидания команды

DBPROP_COMMANDTIMEOUT

Отложить столбец

DBPROP_DEFERRED

Задержка Обновления объекта хранилища

DBPROP_DELAYSTORAGEOBJECTS

Обратная выборка

DBPROP_CANFETCHBACKWARDS

Удержание строк

DBPROP_CANHOLDROWS

IAccessor

DBPROP_IAccessor

IColumnsInfo

DBPROP_IColumnsInfo

IColumnsRowset

DBPROP_IColumnsRowset

IConnectionPointContainer

DBPROP_IConnectionPointContainer

IConvertType

DBPROP_IConvertType

Неподвижные строки

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

Литеральные закладки

DBPROP_LITERALBOOKMARKS

Литеральное удостоверение строки

DBPROP_LITERALIDENTITY

Максимальное число открытых строк

DBPROP_MAXOPENROWS

Максимальное число ожидающих строк

DBPROP_MAXPENDINGROWS

Максимальное число строк

DBPROP_MAXROWS

Детализация уведомлений

DBPROP_NOTIFICATIONGRANULARITY

Этапы уведомлений

DBPROP_NOTIFICATIONPHASES

Объекты с транзакцией

DBPROP_TRANSACTEDOBJECT

Видимые изменения других пользователей

DBPROP_OTHERUPDATEDELETE

Видимые вставки других пользователей

DBPROP_OTHERINSERT

Собственные изменения, видимые

DBPROP_OWNUPDATEDELETE

Собственные вставки, видимые

DBPROP_OWNINSERT

Сохранение при прерывании

DBPROP_ABORTPRESERVE

Сохранение при фиксации

DBPROP_COMMITPRESERVE

Быстрый перезапуск

DBPROP_QUICKRESTART

События повторного входа

DBPROP_REENTRANTEVENTS

Удаление удаленных строк

DBPROP_REMOVEDELETED

Сообщить о нескольких изменениях

DBPROP_REPORTMULTIPLECHANGES

Возврат ожидающих вставок

DBPROP_RETURNPENDINGINSERTS

Уведомление об удалении строки

DBPROP_NOTIFYROWDELETE

Уведомление о первом изменении строки

DBPROP_NOTIFYROWFIRSTCHANGE

Уведомление о вставке строки

DBPROP_NOTIFYROWINSERT

Привилегии строк

DBPROP_ROWRESTRICT

Уведомление о повторной синхронизации строк

DBPROP_NOTIFYROWRESYNCH

Модель потоков строк

DBPROP_ROWTHREADMODEL

Уведомление об изменении отмены строки

DBPROP_NOTIFYROWUNDOCHANGE

Уведомление о отмене удаления строки

DBPROP_NOTIFYROWUNDODELETE

Уведомление о отмене вставки строки

DBPROP_NOTIFYROWUNDOINSERT

Уведомление об обновлении строки

DBPROP_NOTIFYROWUPDATE

Уведомление об изменении положения набора строк

DBPROP_NOTIFYROWSETFETCHPOSISIONCHANGE

Уведомление о выпуске набора строк

DBPROP_NOTIFYROWSETRELEASE

Прокрутка в обратном направлении

DBPROP_CANSCROLLBACKWARDS

Курсор сервера

DBPROP_SERVERCURSOR

Пропустить удаленные закладки

DBPROP_BOOKMARKSKIPPED

Строгое удостоверение строки

DBPROP_STRONGITDENTITY

Уникальные строки

DBPROP_UNIQUEROWS

Совместимость с данными

DBPROP_UPDATABILITY

Использование закладок

DBPROP_BOOKMARKS

Динамические свойства команд

Следующие свойства добавляются в коллекцию Свойств объекта Command.

Имя свойства ADO

Имя свойства OLE DB

Порядок доступа

DBPROP_ACCESSORDER

Базовый путь

SSPROP_STREAM_BASEPATH

Блокировка объектов хранилища

DBPROP_BLOCKINGSTORAGEOBJECTS

Тип закладки

DBPROP_BOOKMARKTYPE

Bookmarkable

DBPROP_IROWSETLOCATE

Изменение вставленных строк

DBPROP_CHANGEINSERTEDROWS

Привилегии столбцов

DBPROP_COLUMNRESTRICT

Уведомление о наборе столбцов

DBPROP_NOTIFYCOLUMNSET

Тип контента

SSPROP_STREAM_CONTENTTYPE

Автоматическое получение курсора

SSPROP_CURSORAUTOFETCH

Отложить столбец

DBPROP_DEFERRED

Отложить подготовку

SSPROP_DEFERPREPARE

Задержка Обновления объекта хранилища

DBPROP_DELAYSTORAGEOBJECTS

Обратная выборка

DBPROP_CANFETCHBACKWARDS

Удержание строк

DBPROP_CANHOLDROWS

IAccessor

DBPROP_IAccessor

IColumnsInfo

DBPROP_IColumnsInfo

IColumnsRowset

DBPROP_IColumnsRowset

IConnectionPointContainer

DBPROP_IConnectionPointContainer

IConvertType

DBPROP_IConvertType

Неподвижные строки

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

Литеральные закладки

DBPROP_LITERALBOOKMARKS

Литеральное удостоверение строки

DBPROP_LITERALIDENTITY

Режим блокировки

DBPROP_LOCKMODE

Максимальное число открытых строк

DBPROP_MAXOPENROWS

Максимальное число ожидающих строк

DBPROP_MAXPENDINGROWS

Максимальное число строк

DBPROP_MAXROWS

Детализация уведомлений

DBPROP_NOTIFICATIONGRANULARITY

Этапы уведомлений

DBPROP_NOTIFICATIONPHASES

Объекты с транзакцией

DBPROP_TRANSACTEDOBJECT

Видимые изменения других пользователей

DBPROP_OTHERUPDATEDELETE

Видимые вставки других пользователей

DBPROP_OTHERINSERT

Свойство кодировки вывода

DBPROP_OUTPUTENCODING

Свойство output Stream

DBPROP_OUTPUTSTREAM

Собственные изменения, видимые

DBPROP_OWNUPDATEDELETE

Собственные вставки, видимые

DBPROP_OWNINSERT

Сохранение при прерывании

DBPROP_ABORTPRESERVE

Сохранение при фиксации

DBPROP_COMMITPRESERVE

Быстрый перезапуск

DBPROP_QUICKRESTART

События повторного входа

DBPROP_REENTRANTEVENTS

Удаление удаленных строк

DBPROP_REMOVEDELETED

Сообщить о нескольких изменениях

DBPROP_REPORTMULTIPLECHANGES

Возврат ожидающих вставок

DBPROP_RETURNPENDINGINSERTS

Уведомление об удалении строки

DBPROP_NOTIFYROWDELETE

Уведомление о первом изменении строки

DBPROP_NOTIFYROWFIRSTCHANGE

Уведомление о вставке строки

DBPROP_NOTIFYROWINSERT

Привилегии строк

DBPROP_ROWRESTRICT

Уведомление о повторной синхронизации строк

DBPROP_NOTIFYROWRESYNCH

Модель потоков строк

DBPROP_ROWTHREADMODEL

Уведомление об изменении отмены строки

DBPROP_NOTIFYROWUNDOCHANGE

Уведомление о отмене удаления строки

DBPROP_NOTIFYROWUNDODELETE

Уведомление о отмене вставки строки

DBPROP_NOTIFYROWUNDOINSERT

Уведомление об обновлении строки

DBPROP_NOTIFYROWUPDATE

Уведомление об изменении положения набора строк

DBPROP_NOTIFYROWSETFETCHPOSITIONCHANGE

Уведомление о выпуске набора строк

DBPROP_NOTIFYROWSETRELEASE

Прокрутка в обратном направлении

DBPROP_CANSCROLLBACKWARDS

Курсор сервера

DBPROP_SERVERCURSOR

Данные сервера при вставке

DBPROP_SERVERDATAONINSERT

Пропустить удаленные закладки

DBPROP_BOOKMARKSKIP

Строгое удостоверение строки

DBPROP_STRONGIDENTITY

Совместимость с данными

DBPROP_UPDATABILITY

Использование закладок

DBPROP_BOOKMARKS

Корневой XML-файл

SSPROP_STREAM_XMLROOT

XSL

SSPROP_STREAM_XSL

Подробные сведения о реализации и функциональные сведения о поставщике OLE DB microsoft SQL Server см. в документации по поставщику OLE DB для SQL Server в разделе OLE DB пакета MDAC SDK.