oledb что это такое

Драйвер Microsoft OLE DB для SQL Server

Скачать OLE DB Driver

Драйвер OLE DB для SQL Server — это изолированный прикладной программный интерфейс (API) для доступа к данным, используемый в OLE DB, который появился в SQL Server 2005 (9.x). Драйвер OLE DB для SQL Server предоставляется в формате одной библиотеки динамической компоновки (DLL). Также он предоставляет новые расширенные функциональные возможности, поставляемые компонентами доступа к данным Windows (выделенное административное соединение Windows, ранее — компоненты доступа к данным компонентов MDAC). Драйвер OLE DB для SQL Server может применяться для создания новых или усовершенствования существующих приложений, которым требуется доступ к новым функциям SQL Server 2005 (9.x), таким как множественный активный результирующий набор (MARS), пользовательские типы, уведомления о запросах, изоляция моментальных снимков и поддержка типа данных XML.

Список различий между драйверами OLE DB для SQL Server и Windows DAC, а также сведения о проблемах, которые следует учесть перед переносом приложения Windows DAC на драйвер OLE DB для SQL Server, можно найти в статье Обновление приложения с переходом от MDAC на драйвер OLE DB для SQL Server.

Предыдущие поставщики Microsoft OLE DB для SQL Server (SQLOLEDB) и собственный клиент OLE DB для SQL Server (SQLNCLI) объявляются нерекомендуемыми для новых разработок.

Драйвер OLE DB для SQL Server может использоваться совместно с основными службами OLE DB, поставляемыми с компонентами доступа к данным Windows DAC, но это не является обязательным требованием. Выбор того, использовать или нет основные службы, зависит от требований отдельного приложения (например, требуется ли пул соединений).

Приложения ADO могут использовать драйвер OLE DB для SQL Server, но мы рекомендуем использовать для ADO ключевое слово строки подключения DataTypeCompatibility (или соответствующее свойство DataSource). При использовании драйвера OLE DB для SQL Server приложения ADO могут использовать новые функции, добавленные в SQL Server 2005 (9.x) и доступные в драйвере OLE DB для SQL Server через ключевые слова строки подключения, свойства OLE DB или Transact-SQL. Дополнительные сведения об использовании этих функций с ADO см. в статье Использование объектов ADO с драйвером OLE DB для SQL Server.

Драйвер OLE DB для SQL Server призван обеспечить упрощенный собственный доступ к данным SQL Server через OLE DB. Он позволяет разрабатывать и развивать новые функции доступа к данным без изменения текущих компонентов выделенного административного соединения Windows, которые теперь являются частью платформы Microsoft Windows.

OLE DB Driver for SQL Server использует компоненты доступа к данным Windows DAC, но явно не зависит от их конкретных версий. Драйвер OLE DB для SQL Server можно использовать с любой версией выделенного административного соединения Windows, которая устанавливается операционной системой, поддерживаемой драйвером OLE DB для SQL Server.

Разные поколения драйверов OLE DB

Существует три поколения поставщиков Microsoft OLE DB для SQL Server.

1. Поставщик Microsoft OLE DB для SQL Server (SQLOLEDB)

Поставщик Microsoft OLE DB для SQL Server (SQLOLEDB) по-прежнему поставляется в составе компонентов доступа к данным Windows. Он больше не поддерживается и мы не рекомендуем использовать этот драйвер для разработки новых приложений.

2. SQL Server Native Client (SNAC)

Начиная с версии SQL Server 2005 (9.x), собственный клиент SQL Server (SNAC) включает интерфейс поставщика OLE DB (SQLNCLI) и поставщик OLE DB, который поставляется с SQL Server 2005 (9.x) через SQL Server 2012 (11.x).

С 2011 года он считается устаревшими и мы не рекомендуем использовать этот драйвер для разработки новых приложений. Дополнительные сведения о жизненном цикле SNAC и доступных для скачивания файлах см. в описании жизненного цикла SNAC.

3. Драйвер Microsoft OLE DB для SQL Server (MSOLEDBSQL)

Поддержка OLE DB возобновлена с момента выпуска поставщика в 2018 г.

Новый поставщик OLE DB называется драйвером Microsoft OLE DB для SQL Server (MSOLEDBSQL). Этот новый поставщик будет далее дополняться всеми новыми функциями сервера.

Чтобы использовать новый драйвер Майкрософт OLE DB для SQL Server в существующих приложениях, следует запланировать преобразование строк подключения из форматов SQLOLEDB и SQLNCLI в MSOLEDBSQL.

В этом разделе

Когда использовать драйвер OLE DB для SQL Server
Обсуждается место драйвера OLE DB для SQL Server среди технологий доступа к данным корпорации Майкрософт, дается его сравнение с компонентами доступа к данным Windows DAC и ADO.NET, а также предоставляются указания, помогающие решить, какую технологию доступа к данным следует использовать.

OLE DB Driver for SQL Server features (Функции драйвера OLE DB для SQL Server)
Здесь описаны возможности, которые поддерживаются драйвером OLE DB для SQL Server.

Создание приложений с помощью драйвера OLE DB для SQL Server
Представлены общие сведения о разработке с помощью драйвера OLE DB для SQL Server, включая отличия от компонентов доступа к данным Windows DAC, используемые компоненты и способ использования совместно с ADO.

В этом разделе также обсуждается установка и развертывание драйвера OLE DB для SQL Server, в том числе способ распространения библиотеки драйвера OLE DB для SQL Server.

Требования к системе для драйвера OLE DB для SQL Server
Здесь описаны системные ресурсы, которые нужны для использования драйвера OLE DB для SQL Server.

OLE DB Driver for SQL Server programming (Программирование драйвера OLE DB для SQL Server)
Предоставляются сведения об использовании драйвера OLE DB для SQL Server.

Finding more OLE DB Driver for SQL Server information (Дополнительные сведения о драйвере OLE DB для SQL Server)
Предоставляются дополнительные ресурсы со сведениями о драйвере OLE DB для SQL Server, в том числе ссылки на внешние ресурсы и дополнительные сведения.

Источник

Назначение «OLE DB»

Для источника данных Microsoft Office Excel 2007 потребуется поставщик данных, отличный от того, который использовался в предыдущих версиях Excel. Дополнительные сведения см. в разделе Подключение к книге Excel.

Назначение «OLE DB» предусматривает пять различных режимов доступа для загружаемых данных:

Таблица или представление. Можно указать существующую таблицу или представление или создать новую таблицу.

Таблица или представление с параметрами быстрой загрузки. Можно указать существующую таблицу или создать новую.

Таблица или представление, указанные в переменной.

Таблица или представление, указанные в переменной с параметрами быстрой загрузки.

Результат выполнения инструкции SQL.

Назначение «OLE DB» не поддерживает параметры. Если необходимо выполнить параметризованную инструкцию INSERT, лучше воспользоваться преобразованием «Команда OLE DB». Дополнительные сведения см. в разделе OLE DB Command Transformation.

При использовании диалогового окна Редактор назначения «OLE DB» в конструкторе Integration Services для создания целевой таблицы, в которую целевой объект OLE DB вставляет данные, потребуется вручную выбрать вновь созданную таблицу. Необходимость выбора вручную возникает, когда поставщик OLE DB, такой как OLE DB для DB2, автоматически добавляет идентификаторы схемы в имя таблицы.

Это назначение использует диспетчер соединений OLE DB для подключения к источнику данных, и диспетчер соединений определяет используемый поставщик OLE DB. Дополнительные сведения см. в разделе Диспетчер соединений OLE DB.

Проект служб Службы Integration Services также содержит объект источника данных, из которого можно создать диспетчер соединений OLE DB, чтобы источники данных и представления источников данных стали доступными для целевой OLE DB.

Целевой объект OLE DB содержит сопоставления между входными столбцами и столбцами в источнике данных назначения. Нет необходимости сопоставлять входные столбцы всем целевым столбцам, но в зависимости от свойств целевых столбцов могут произойти ошибки, если входные столбцы не сопоставлены целевым столбцам. Например, если целевой столбец не допускает значений NULL, входной столбец должен быть ему сопоставлен. Кроме того, типы данных сопоставленных столбцов должны быть совместимыми. Например, нельзя сопоставить входной столбец строкового типа целевому столбцу числового типа данных.

Целевой объект OLE DB имеет один обычный вход и один выход ошибок.

Дополнительные сведения о типах данных см. в разделе Integration Services Data Types.

Параметры быстрой загрузки

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

Сохранить значение NULL при выполнении операции массовой загрузки.

Проверочное ограничение в целевой таблице или представлении при выполнении операции массового импорта.

Получить блокировку на уровне таблиц на период операции массовой загрузки.

Указать число строк в пакете и зафиксировать размер.

Любое нарушение ограничения в назначении вызывает сбой обработки всего пакета строк, определенного параметром FastLoadMaxInsertCommitSize.

Параметры быстрой загрузкиОписание
KILOBYTES_PER_BATCHУстанавливает размер в килобайтах для вставки. Параметр имеет форму KILOBYTES_PER_BATCH =

.

FIRE_TRIGGERSУстанавливает запуск триггеров при вставке таблицы. Параметр имеет форму FIRE_TRIGGERS. Наличие параметра означает, что триггер запускается.
ORDERУстанавливает способ сортировки введенных данных. Параметр имеет форму ORDER ASC|DESC. Количество столбцов может быть любым, необязательно включать порядок сортировки. Если порядок сортировки пропущен, операция вставки предполагает, что данные не отсортированы.

Примечание. Производительность можно повысить, если использовать параметр ORDER для сортировки загружаемых данных в соответствии с кластеризованным индексом таблицы.

Ключевые слова Transact-SQL традиционно набираются буквами в верхнем регистре, однако учет их регистра не осуществляется.

Дополнительные сведения о параметрах быстрой загрузки см. в разделе BULK INSERT (Transact-SQL).

Устранение неполадок, связанных с назначением «OLE DB»

В журнал можно записывать вызовы, сделанные назначением «OLE DB» к внешним поставщика данных. Эта возможность ведения журнала может быть использована для устранения неполадок при сохранении данных во внешние источники данных, выполняемом назначением «OLE DB». Чтобы вести журнал вызовов, которые назначение «OLE DB» совершает к внешним поставщикам данных, необходимо включить ведение журнала пакета и выбрать событие Диагностика на уровне пакета. Дополнительные сведения см. в разделе Инструменты устранения неполадок при выполнении пакетов.

Настройка целевого объекта OLE DB

Значения свойств можно задавать с помощью конструктора Integration Services или программными средствами.

Диалоговое окно Расширенный редактор содержит свойства, которые можно установить с помощью программных средств. Дополнительные сведения о свойствах, которые вы можете задать в диалоговом окне Расширенный редактор или программными средствами, см. в следующих разделах.

Дополнительные сведения о настройке свойств см. в следующих разделах.

Редактор назначения OLE DB (страница «Диспетчер соединений»)

Страница Диспетчер соединений диалогового окна Редактор назначения «OLE DB» используется для выбора подключения OLE DB для назначения. На этой странице также можно выбрать таблицу или представление базы данных.

Для источника данных Microsoft Office Excel 2007 потребуется поставщик данных, отличный от того, который использовался в предыдущих версиях Excel. Дополнительные сведения см. в разделе Подключение к книге Excel.

Свойство CommandTimeout вступает в силу только тогда, когда действует режим доступа Команда SQL.

Статические параметры

Диспетчер соединений OLE DB
Выберите из списка существующий диспетчер соединений или создайте новое соединение, нажав кнопку Создать.

Режим доступа к данным
Укажите метод загрузки данных в назначение. Загрузка данных с двухбайтовой кодировкой (DBCS) требует одного из режимов быстрой загрузки. Дополнительные сведения о режимах доступа для быстрой загрузки данных, оптимизированных для массовой вставки, см. в разделе OLE DB Destination.

ПараметрОписание
Таблица или представлениеЗагрузка данных в таблицу или представление назначения «OLE DB».
Быстрая загрузка таблицы или представленияЗагрузка данных в таблицу или представление назначения «OLE DB» и использование параметра быстрой загрузки. Дополнительные сведения о режимах доступа для быстрой загрузки данных, оптимизированных для массовой вставки, см. в разделе OLE DB Destination.
Переменная, содержащая имя таблицы или представленияЗадайте переменную, содержащую имя таблицы или представления.

Дополнительные сведения Использование переменных в пакетах

Быстрая загрузка переменной имени представления или имени таблицыУкажите переменную, содержащую имя таблицы или представления, и используйте для загрузки данных параметр быстрой загрузки. Дополнительные сведения о режимах доступа для быстрой загрузки данных, оптимизированных для массовой вставки, см. в разделе OLE DB Destination.
Команда SQLЗагрузка данных в назначение «OLE DB» при помощи SQL-запроса.

Динамические параметры режима доступа к данным

Режим доступа к данным = Таблица или представление

Имя таблицы или представления
Выберите имя таблицы или представления из списка доступных в источнике данных.

Режим доступа к данным = таблица или представление — быстрая загрузка

Имя таблицы или представления
Выберите из этого списка таблицу или представление базы данных или создайте новую таблицу, нажав кнопку Создать.

Сохранять ИД
Укажите, следует ли при загрузке данных копировать значения идентификаторов. Это свойство доступно только с параметром быстрой загрузки. Значение по умолчанию этого свойства равно false.

Сохранять значения NULL
Укажите, следует ли при загрузке данных копировать значения NULL. Это свойство доступно только с параметром быстрой загрузки. Значение по умолчанию этого свойства равно false.

Блокировка таблицы
Укажите, должна ли таблица блокироваться при загрузке. Значение по умолчанию этого свойства равно true.

Проверочные ограничения
Определите, будет ли назначение проверять ограничения во время загрузки данных. Значение по умолчанию этого свойства равно true.

Строк на пакет
Задает количество строк в одном пакете. Это свойство по умолчанию имеет значение -1, которое указывает на то, что никакое значение не присваивалось.

Макс. фиксируемый размер вставок
Задайте размер пакетов, который назначение «OLE DB» пытается зафиксировать во время операций быстрой загрузки. Значение 0 указывает, что фиксация всех данных производится в одном пакете после обработки всех строк.

Если назначение «OLE DB» и другой компонент потока данных обновляют одну и ту же исходную таблицу, то значение 0 может привести к тому, что выполняемый пакет перестанет отвечать на запросы. Чтобы решить эту проблему, задайте для параметра Макс. фиксируемый размер вставок значение 2147483647.

При задании значения этого свойства назначение фиксирует строки в пакетах, которые меньше (а) значения Макс. фиксируемый размер вставокили (б) количества оставшихся строк в буфере, обрабатываемом в текущий момент.

Режим доступа к данным — переменная, содержащая имя таблицы или представления

Имя переменной
Выберите переменную, содержащую имя таблицы или представления.

Режим доступа к данным = переменная, содержащая имя таблицы или представления (быстрая загрузка)

Имя переменной
Выберите переменную, содержащую имя таблицы или представления.

Сохранять ИД
Укажите, следует ли при загрузке данных копировать значения идентификаторов. Это свойство доступно только с параметром быстрой загрузки. Значение по умолчанию этого свойства равно false.

Сохранять значения NULL
Укажите, следует ли при загрузке данных копировать значения NULL. Это свойство доступно только с параметром быстрой загрузки. Значение по умолчанию этого свойства равно false.

Блокировка таблицы
Укажите, должна ли таблица блокироваться при загрузке. Значение по умолчанию этого свойства равно false.

Проверочные ограничения
Укажите, действуют ли на задачу проверочные ограничения. Значение по умолчанию этого свойства равно false.

Строк на пакет
Задает количество строк в одном пакете. Это свойство по умолчанию имеет значение -1, которое указывает на то, что никакое значение не присваивалось.

Макс. фиксируемый размер вставок
Задайте размер пакетов, который назначение «OLE DB» пытается зафиксировать во время операций быстрой загрузки. Значение по умолчанию 2147483647 указывает на то, что фиксация всех данных производится одним пакетом после обработки всех строк.

Если назначение «OLE DB» и другой компонент потока данных обновляют одну и ту же исходную таблицу, то значение 0 может привести к тому, что выполняемый пакет перестанет отвечать на запросы. Чтобы решить эту проблему, задайте для параметра Макс. фиксируемый размер вставок значение 2147483647.

Режим доступа к данным — команда SQL

Текст команды SQL
Введите текст SQL-запроса, постройте запрос, нажав кнопку Создать запрос, или выберите файл, содержащий текст запроса, нажав кнопку Обзор.

Назначение «OLE DB» не поддерживает параметры. Если необходимо выполнить параметризованную инструкцию INSERT, лучше воспользоваться преобразованием «Команда OLE DB». Дополнительные сведения см. в разделе OLE DB Command Transformation.

Создать запрос
Воспользуйтесь диалоговым окном Построитель запросов для визуального конструирования SQL-запроса.

Обзор
Воспользуйтесь диалоговым окном Открыть для выбора файла, содержащего текст SQL-запроса.

Анализ запроса
Проверить синтаксис текста запроса.

Редактор назначения OLE DB (страница «Сопоставления»)

Страница Сопоставления диалогового окна Редактор назначения «OLE DB» используется для сопоставления входных столбцов с целевыми.

Параметры

Доступные входные столбцы
Просмотрите список доступных входных столбцов. Для сопоставления доступных входных столбцов с целевыми столбцами используется операция перетаскивания.

Доступные целевые столбцы
Просмотрите список доступных целевых столбцов. Чтобы сопоставить доступные целевые столбцы с входными столбцами, воспользуйтесь операцией перетаскивания.

Целевой столбец
Позволяет просмотреть каждый из доступных целевых столбцов без учета наличия или отсутствия сопоставления.

Редактор назначения «OLE DB» (страница «Вывод ошибок»)

Страница Вывод ошибок диалогового окна Редактор назначения «OLE DB» используется для задания параметров обработки ошибок.

Параметры

Ввод-вывод
Просмотрите имя входных данных.

Столбец
Не используется.

Error
Задайте действие, которое необходимо выполнить при возникновении ошибки: пропустить ошибку, перенаправить строку или вызвать сбой компонента.

Усечение
Не используется.

Описание
Просмотрите описание операции.

Присвоить указанное значение выбранным ячейкам
Укажите действие, которое необходимо применить ко всем выбранным ячейкам при возникновении ошибки или усечения: пропустить ошибку, перенаправить строку или вызвать сбой компонента.

Применить
Применить параметр обработки ошибок к выбранным ячейкам.

Источник

Обзор поставщика OLE DB Майкрософт для ODBC

Для программистов ADO или RDS идеальным миром будет один, в котором каждый источник данных предоставляет интерфейс OLE DB, чтобы ADO мог напрямую обращаться к источнику данных. Хотя все больше поставщиков баз данных реализуют OLE DB интерфейсы, некоторые источники данных пока не предоставляются таким образом. Однако большинство систем СУБД, используемых сегодня, доступны через ODBC.

драйверы ODBC доступны для всех основных субд, используемых сегодня, включая Microsoft SQL Server, microsoft Access (ядро субд microsoft Jet) и Microsoft FoxPro, помимо таких продуктов баз данных, как Oracle.

Однако поставщик Microsoft ODBC позволяет ADO подключаться к любому источнику данных ODBC. Поставщик бесплатен и поддерживает Юникод.

Поставщик поддерживает транзакции, хотя различные ядра СУБД предлагают различные типы поддержки транзакций. Например, Microsoft Access поддерживает вложенные транзакции размером до пяти уровней.

Это поставщик по умолчанию для ADO, и поддерживаются все зависящие от поставщика свойства и методы ADO.

Параметры строки соединения

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

При чтении свойства поставщика также будет возвращена эта строка.

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

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

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

Ключевое словоОписание
ПоставщикУказывает поставщика OLE DB для ODBC.
DSNУказывает имя источника данных.
UIDУказывает имя пользователя.
PWDУказывает пароль пользователя.
URL-адресУказывает URL-адрес файла или каталога, опубликованного в веб-папке.

Так как это поставщик по умолчанию для ADO, если опустить параметр provider = из строки подключения, ADO попытается установить соединение с этим поставщиком.

при подключении к поставщику источника данных, который поддерживает проверку подлинности Windows, следует указать Trusted_Connection = yes или Integrated Security = SSPI вместо сведений об идентификаторе пользователя и пароле в строке подключения.

Поставщик не поддерживает некоторые параметры соединения в дополнение к определенным в ADO. Однако поставщик передаст параметры подключения, отличные от ADO, к диспетчеру драйверов ODBC.

Так как параметр provider можно опустить, можно создать строку подключения ADO, идентичную строке подключения ODBC для того же источника данных. Используйте те же имена параметров (Driver =, Database =, DSN = и т. д.), значения и синтаксис, как при создании строки подключения ODBC. Можно подключиться к предопределенному имени источника данных (DSN) или FileDSN без него.

Синтаксис с DSN или FileDSN:

Синтаксис без имени DSN (подключение, не имеющее имени DSN):

Комментарии

если используется имя DSN или FileDSN, оно должно быть определено с помощью администратора источников данных ODBC на панели управления Windows. в Microsoft Windows 2000 администратор ODBC находится в разделе администрирование. в более ранних версиях Windows значок администратора odbc называется 32-bit ODBC или просто odbc.

вместо установки имени DSN можно указать драйвер ODBC (driver =), например «SQL Server;» имя сервера (server =); и имя базы данных (база данных =).

Свойства подключения Provider-Specific

Имя свойстваОписание
Доступные процедуры (KAGPROP_ACCESSIBLEPROCEDURES)Указывает, имеет ли пользователь доступ к хранимым процедурам.
Доступные таблицы (KAGPROP_ACCESSIBLETABLES)Указывает, имеет ли пользователь разрешение на выполнение инструкций SELECT в таблицах базы данных.
Активные инструкции (KAGPROP_ACTIVESTATEMENTS)Указывает число дескрипторов, которые драйвер ODBC может поддерживать для соединения.
Имя драйвера (KAGPROP_DRIVERNAME)Указывает имя файла драйвера ODBC.
Версия ODBC драйвера (KAGPROP_DRIVERODBCVER)Указывает версию ODBC, поддерживаемую этим драйвером.
Использование файлов (KAGPROP_FILEUSAGE)Указывает, как драйвер обрабатывает файл в источнике данных; в виде таблицы или каталога.
Предложение escape-выражения LIKE (KAGPROP_LIKEESCAPECLAUSE)Указывает, поддерживает ли драйвер определение и использование escape-символа для символа процента (%) и символа подчеркивания (_) в предикате LIKE предложения WHERE.
Максимальное число столбцов в Group By (KAGPROP_MAXCOLUMNSINGROUPBY)Указывает максимальное количество столбцов, которые могут быть перечислены в предложении GROUP BY инструкции SELECT.
Максимальное число столбцов в индексе (KAGPROP_MAXCOLUMNSININDEX)Указывает максимальное число столбцов, которые могут быть добавлены в индекс.
Максимальное число столбцов в заданном порядке (KAGPROP_MAXCOLUMNSINORDERBY)Указывает максимальное количество столбцов, которые могут быть перечислены в предложении ORDER BY инструкции SELECT.
Максимальное число столбцов в SELECT (KAGPROP_MAXCOLUMNSINSELECT)Указывает максимальное количество столбцов, которые могут быть перечислены в части SELECT инструкции SELECT.
Максимальное число столбцов в таблице (KAGPROP_MAXCOLUMNSINTABLE)Указывает максимальное число столбцов, допустимое в таблице.
Числовые функции (KAGPROP_NUMERICFUNCTIONS)Указывает, какие числовые функции поддерживаются драйвером ODBC. Список имен функций и связанных значений, используемых в этой битовой маске, см. в приложении E: скалярные функциив документации по ODBC.
Возможности внешнего объединения (KAGPROP_OJCAPABILITY)Указывает типы внешних соединений, поддерживаемые поставщиком.
Внешние объединения (KAGPROP_OUTERJOINS)Указывает, поддерживает ли поставщик внешние объединения.
Специальные символы (KAGPROP_SPECIALCHARACTERS)Указывает, какие символы имеют специальное значение для драйвера ODBC.
Хранимые процедуры (KAGPROP_PROCEDURES)Указывает, доступны ли хранимые процедуры для использования с этим драйвером ODBC.
Строковые функции (KAGPROP_STRINGFUNCTIONS)Указывает, какие строковые функции поддерживаются драйвером ODBC. Список имен функций и связанных значений, используемых в этой битовой маске, см. в приложении E: скалярные функциив документации по ODBC.
Системные функции (KAGPROP_SYSTEMFUNCTIONS)Указывает, какие системные функции поддерживаются драйвером ODBC. Список имен функций и связанных значений, используемых в этой битовой маске, см. в приложении E: скалярные функциив документации по ODBC.
Функции времени и даты (KAGPROP_TIMEDATEFUNCTIONS)Указывает, какие функции времени и даты поддерживаются драйвером ODBC. Список имен функций и связанных значений, используемых в этой битовой маске, см. в приложении E: скалярные функциив документации по ODBC.
SQL Поддержка грамматики (KAGPROP_ODBCSQLCONFORMANCE)указывает грамматику SQL, поддерживаемую драйвером ODBC.

Provider-Specific набор записей и свойства команд

Имя свойстваОписание
Обновления, операции удаления и вставки на основе запросов (KAGPROP_QUERYBASEDUPDATES)указывает, можно ли выполнять операции обновления, удаления и вставки с помощью запросов SQL.
Тип параллелизма ODBC (KAGPROP_CONCURRENCY)Указывает метод, используемый для уменьшения потенциальных проблем, вызванных двумя пользователями, пытающимися получить доступ к одним и тем же данным из источника данных одновременно.
Доступность больших двоичных объектов на Forward-Only курсоре (KAGPROP_BLOBSONFOCURSOR)Указывает, можно ли получить доступ к полям BLOB-объектов при использовании однопроходного курсора.
Включить SQL_FLOAT, SQL_DOUBLE и SQL_REAL в предложения WHERE КБУ (KAGPROP_INCLUDENONEXACT)Указывает, можно ли включать значения SQL_FLOAT, SQL_DOUBLE и SQL_REAL в предложение WHERE КБУ.
Расположение в последней строке после вставки (KAGPROP_POSITIONONNEWROW)Указывает, что после вставки новой записи в таблицу последняя строка в таблице станет текущей.
Ировсетчанжеекстинфо (KAGPROP_IROWSETCHANGEEXTINFO)Указывает, предоставляет ли интерфейс IRowsetChange расширенную информацию.
Тип курсора ODBC (KAGPROP_CURSOR)Указывает тип курсора, используемого набором записей.
Создание набора строк, который можно маршалировать (KAGPROP_MARSHALLABLE)Указывает, что драйвер ODBC создает набор записей, который можно маршалировать

Текст команды

Использование объекта команды во многом зависит от источника данных и типа запроса или оператора команды, который он будет принимать.

ODBC предоставляет специальный синтаксис для вызова хранимых процедур. Для свойства CommandText объекта Command аргумент CommandText для метода EXECUTE объекта Connection или Исходный аргумент для метода Open объекта Recordset передается в виде строки с этим синтаксисом:

Ссылки на параметры являются необязательными и зависят от структуры хранимой процедуры. Если вы хотите вызвать хранимую процедуру, которая не определяет параметры, строка будет выглядеть следующим образом:

Если у вас есть два параметра запроса, строка будет выглядеть следующим образом:

Если хранимая процедура вернет значение, возвращаемое значение рассматривается как другой параметр. Если у вас нет параметров запроса, но у вас есть возвращаемое значение, ваша строка будет выглядеть следующим образом:

Наконец, если у вас есть возвращаемое значение и два параметра запроса, ваша строка будет выглядеть следующим образом:

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

Доступность стандартных свойств набора записей ADO:

СвойствофорвардонлиДинамическийKeysetСтатические
Примеры absolutepageнедоступнонедоступночтение/записьчтение/запись
Примеры AbsolutePositionнедоступнонедоступночтение/записьчтение/запись
ActiveConnectionчтение/записьчтение/записьчтение/записьчтение/запись
BOFТолько для чтенияТолько для чтенияТолько для чтенияТолько для чтения
Закладканедоступнонедоступночтение/записьчтение/запись
CacheSizeчтение/записьчтение/записьчтение/записьчтение/запись
CursorLocationчтение/записьчтение/записьчтение/записьчтение/запись
Примеры CursorTypeчтение/записьчтение/записьчтение/записьчтение/запись
EditModeТолько для чтенияТолько для чтенияТолько для чтенияТолько для чтения
Фильтрчтение/записьчтение/записьчтение/записьчтение/запись
LockTypeчтение/записьчтение/записьчтение/записьчтение/запись
MarshalOptionsчтение/записьчтение/записьчтение/записьчтение/запись
MaxRecordsчтение/записьчтение/записьчтение/записьчтение/запись
PageCountчтение/записьнедоступноТолько для чтенияТолько для чтения
PageSizeчтение/записьчтение/записьчтение/записьчтение/запись
RecordCountчтение/записьнедоступноТолько для чтенияТолько для чтения
Источникчтение/записьчтение/записьчтение/записьчтение/запись
СостояниеТолько для чтенияТолько для чтенияТолько для чтенияТолько для чтения
СостояниеТолько для чтенияТолько для чтенияТолько для чтенияТолько для чтения

Свойства примеры AbsolutePosition и примеры absolutepage доступны только для записи при использовании ADO с версией 1,0 поставщика Microsoft OLE DB для ODBC.

Доступность стандартных методов набора записей ADO:

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

Поставщик OLE DB Майкрософт для ODBC вставляет несколько динамических свойств в коллекцию свойств неоткрытыго соединения, набора записейи командных объектов.

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

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

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

Имя свойства ADOИмя свойства OLE DB
Активные сеансыDBPROP_ACTIVESESSIONS
Прервать асинхроннаяDBPROP_ASYNCTXNABORT
Асинхронная фиксация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
ГРУППИРОВКа по поддержкеDBPROP_GROUPBY
Поддержка разнородных таблицDBPROP_HETEROGENEOUSTABLES
Чувствительность идентификатора к региструDBPROP_IDENTIFIERCASE
Начальный каталогDBPROP_INIT_CATALOG
Уровни изоляцииDBPROP_SUPPORTEDTXNISOLEVELS
Хранение изоляцииDBPROP_SUPPORTEDTXNISORETAIN
Идентификатор локалиDBPROP_INIT_LCID
РасположениеDBPROP_INIT_LOCATION
Максимальный размер индексаDBPROP_MAXINDEXSIZE
Максимальный размер строкиDBPROP_MAXROWSIZE
Максимальный размер строки включает большой двоичный объектDBPROP_MAXROWSIZEINCLUDESBLOB
Максимальное число таблиц в SELECTDBPROP_MAXTABLESINSELECT
РежимDBPROP_INIT_MODE
Несколько наборов параметровDBPROP_MULTIPLEPARAMSETS
Множественные результатыDBPROP_MULTIPLERESULTS
несколько служба хранилища объектовDBPROP_MULTIPLESTORAGEOBJECTS
Обновление нескольких таблицDBPROP_MULTITABLEUPDATE
Порядок параметров сортировки NULLDBPROP_NULLCOLLATION
Поведение сцепления со значением NULLDBPROP_CONCATNULLBEHAVIOR
Службы OLE DBDBPROP_INIT_OLEDBSERVICES
Версия OLE DBDBPROP_PROVIDEROLEDBVER
Поддержка объектов OLEDBPROP_OLEOBJECTS
Поддержка открытых наборов строкDBPROP_OPENROWSETSUPPORT
УПОРЯДОЧЕНие по столбцам в списке выбораDBPROP_ORDERBYCOLUMNSINSELECT
Доступность выходного параметраDBPROP_OUTPUTPARAMETERAVAILABILITY
ПарольDBPROP_AUTH_PASSWORD
Методы доступа для передачи по ссылкеDBPROP_BYREFACCESSORS
Сохранять сведения о безопасностиDBPROP_AUTH_PERSIST_SENSITIVE_AUTHINFO
Тип постоянного идентификатораDBPROP_PERSISTENTIDTYPE
Поведение при подготовке к прерываниюDBPROP_PREPAREABORTBEHAVIOR
Действие подготовки к фиксацииDBPROP_PREPARECOMMITBEHAVIOR
Условие процедурыDBPROP_PROCEDURETERM
promptDBPROP_INIT_PROMPT
Понятное имя поставщикаDBPROP_PROVIDERFRIENDLYNAME
Provider NameDBPROP_PROVIDERFILENAME
Версия поставщикаDBPROP_PROVIDERVER
Источник данных Read-OnlyDBPROP_DATASOURCEREADONLY
Преобразования наборов строк для командыDBPROP_ROWSETCONVERSIONSONCOMMAND
Термин схемыDBPROP_SCHEMATERM
Использование схемыDBPROP_SCHEMAUSAGE
Поддержка SQLDBPROP_SQLSUPPORT
структурированные служба хранилищаDBPROP_STRUCTUREDSTORAGE
Поддержка вложенных запросовDBPROP_SUBQUERIES
Термин таблицыDBPROP_TABLETERM
DDL транзакцииDBPROP_SUPPORTEDTXNDDL
Идентификатор пользователя.DBPROP_AUTH_USERID
Имя пользователяDBPROP_USERNAME
Дескриптор окнаDBPROP_INIT_HWND

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

В коллекцию свойств объекта набора записей добавляются следующие свойства.

Имя свойства ADOИмя свойства OLE DB
Порядок доступаDBPROP_ACCESSORDER
блокировка служба хранилища объектовDBPROP_BLOCKINGSTORAGEOBJECTS
Тип закладкиDBPROP_BOOKMARKTYPE
С закладкамиDBPROP_IROWSETLOCATE
Изменить вставленные строкиDBPROP_CHANGEINSERTEDROWS
Права доступа к столбцуDBPROP_COLUMNRESTRICT
Уведомление о наборе столбцовDBPROP_NOTIFYCOLUMNSET
откладывание служба хранилища обновлений объектовDBPROP_DELAYSTORAGEOBJECTS
Получить назадDBPROP_CANFETCHBACKWARDS
Удержание строкDBPROP_CANHOLDROWS
IAccessorDBPROP_IAccessor
IColumnsInfoDBPROP_IColumnsInfo
IColumnsRowsetDBPROP_IColumnsRowset
IConnectionPointContainerDBPROP_IConnectionPointContainer
IConvertTypeDBPROP_IConvertType
Строки немобильных устройствDBPROP_IMMOBILEROWS
IRowsetDBPROP_IRowset
IRowsetChangeDBPROP_IRowsetChange
ировсетидентитиDBPROP_IRowsetIdentity
IRowsetInfoDBPROP_IRowsetInfo
IRowsetLocateDBPROP_IRowsetLocate
Интерфейс irowsetresynch
IRowsetUpdateDBPROP_IRowsetUpdate
ISequentialStreamDBPROP_ISequentialStream
ISupportErrorInfoDBPROP_ISupportErrorInfo
Литеральные закладкиDBPROP_LITERALBOOKMARKS
Удостоверение литеральной строкиDBPROP_LITERALIDENTITY
Максимальное число открытых строкDBPROP_MAXOPENROWS
Максимальное число ожидающих строкDBPROP_MAXPENDINGROWS
Максимальное число строкDBPROP_MAXROWS
Гранулярность уведомленийDBPROP_NOTIFICATIONGRANULARITY
Этапы уведомленияDBPROP_NOTIFICATIONPHASES
Транзакционные объектыDBPROP_TRANSACTEDOBJECT
Видны собственные изменения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_BOOKMARKSKIPPED
Строгая идентификация строкDBPROP_STRONGITDENTITY
Уникальные строкиDBPROP_UNIQUEROWS
UpdatabilityDBPROP_UPDATABILITY
Использование закладокDBPROP_BOOKMARKS

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

Имя свойства ADOИмя свойства OLE DB
Порядок доступаDBPROP_ACCESSORDER
блокировка служба хранилища объектовDBPROP_BLOCKINGSTORAGEOBJECTS
Тип закладкиDBPROP_BOOKMARKTYPE
С закладкамиDBPROP_IROWSETLOCATE
Изменить вставленные строкиDBPROP_CHANGEINSERTEDROWS
Права доступа к столбцуDBPROP_COLUMNRESTRICT
Уведомление о наборе столбцовDBPROP_NOTIFYCOLUMNSET
откладывание служба хранилища обновлений объектовDBPROP_DELAYSTORAGEOBJECTS
Получить назадDBPROP_CANFETCHBACKWARDS
Удержание строкDBPROP_CANHOLDROWS
IAccessorDBPROP_IAccessor
IColumnsInfoDBPROP_IColumnsInfo
IColumnsRowsetDBPROP_IColumnsRowset
IConnectionPointContainerDBPROP_IConnectionPointContainer
IConvertTypeDBPROP_IConvertType
Строки немобильных устройствDBPROP_IMMOBILEROWS
IRowsetDBPROP_IRowset
IRowsetChangeDBPROP_IRowsetChange
ировсетидентитиDBPROP_IRowsetIdentity
IRowsetInfoDBPROP_IRowsetInfo
IRowsetLocateDBPROP_IRowsetLocate
Интерфейс irowsetresynch
IRowsetUpdateDBPROP_IRowsetUpdate
ISequentialStreamDBPROP_ISequentialStream
ISupportErrorInfoDBPROP_ISupportErrorInfo
Литеральные закладкиDBPROP_LITERALBOOKMARKS
Удостоверение литеральной строкиDBPROP_LITERALIDENTITY
Максимальное число открытых строкDBPROP_MAXOPENROWS
Максимальное число ожидающих строкDBPROP_MAXPENDINGROWS
Максимальное число строкDBPROP_MAXROWS
Гранулярность уведомленийDBPROP_NOTIFICATIONGRANULARITY
Этапы уведомленияDBPROP_NOTIFICATIONPHASES
Транзакционные объектыDBPROP_TRANSACTEDOBJECT
Видны собственные изменения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_BOOKMARKSKIP
Строгая идентификация строкDBPROP_STRONGIDENTITY
UpdatabilityDBPROP_UPDATABILITY
Использование закладокDBPROP_BOOKMARKS

дополнительные сведения о конкретной реализации и функциональных возможностях о поставщике OLE DB майкрософт для ODBC см. в справочнике по программированию OLE DB или посетите веб-узел центра разработчиков для доступа к данным и служба хранилища на сайте MSDN.

Источник

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *