Archive for 'OLE DB'

Вау!

Оказывается я пропустил весьма занятную новость. Announcing the new release of OLE DB Driver for SQL Server Previously, Microsoft announced deprecation of the Microsoft OLE DB Provider for SQL Server, part of the SQL Server Native Client (SNAC). At the time, this decision was made to try to provide more simplicity for the developer story […]

DBTYPE_EMPTY и DBTYPE_NULL

Привет всем. Через 18 лет (радует что не 20) сформировалось полное понимание назначения типов данных DBTYPE_EMPTY и DBTYPE_NULL. DBTYPE_EMPTY обозначает отсутствие значения как такового. Указание данных с типом DBTYPE_EMPTY — это сигнал использовать значения по умолчанию. Это же самое что указать статус данных DBSTATUS_S_DEFAULT. DBTYPE_NULL обозначает NULL-состояние данных. Это же самое что указать статус данных […]

Совместная работа ADO.NET, ADODB и OLEDB.

Привет всем. На сайт IBProvider-а выложен новый пример на C#, с демонстрацией взаимодействия трех технологий: ADO.NET, ADODB, OLEDB. Достаточно короткий и простой: Проект этого примера можно найти в дистрибутиве ADO.NET провайдера. ADO.NET провайдер создает подключение к базе данных Подключаем ADODB к ADO.NET ADODB инициирует транзакцию в этом подключении Создаем компонент IBGenManager и подключаем его к […]

Асинхронная загрузка данных в IBProvider.

Привет всем. На сайт загружены дистрибутивы нового триала IBProvider-a (v3.14), в котором реализована полноценная поддержка асинхронной загрузки результирующего множества.

Текущее состояние.

Привет всем. Сегодня были собраны финальные бинарники следующего выпуска провайдера (v3.13) и запущено их релизное тестирование. Была мысль после v3.12 выпустить v3.14. Но потом подумал — после всех десятков килотонн тестов, которые были выполнены в процессе разработки (и выполняются в данный момент) проявлять такое суеверие просто несерьезно :).

Выравнивание структур в OLEDB.

Привет всем. Обнаружил интересную штуку в заголовочном файле «oledb.h». Оказывается, при компиляции 32-битных бинарников применяется выравнивание равное 2. А при компиляции 64-битных бинарников — выравнивание равное 8. Вот так вот живешь, и не знаешь про эти засады на 32-битной платформе.

Архитектурные ошибки OLEDB. Передача данных в виде COM-объектов.

При плотной работе с OLEDB интерфейсами, рано или поздно обнаруживаются мелкие «дыры». Которые создают неоправданную нагрузку на реализацию провайдера и потенциально могут приводить к утечкам ресурсов. К счастью, этих «дыр» очень мало. Одна из них — связана с передачей данных в виде прямого указателя на COM-объект (ICommand::Execute, IRowsetChange::SetData, IRowsetChange::Insert).

Миф №2. OLEDB не позволяет воспользоваться всеми преимуществами сервера.

За те 10 лет, что я вожусь с OLEDB, я все сильнее склоняюсь к мысли, что OLEDB больше предназначено для IB/FB, чем для MSSQL. Что говорит о незаурядных способностях его авторов. Да ладно, скажу прямо — его спроектировал МЕГА МОЗГ, не обремененный ограничениями окружающей действительности 96 (или 98?) года. Из существующих ограничений, вот так вот […]

Миф №1. IBProvider работает через ODBC.

Привет всем! Иногда в сети обнаруживаются смешные вещи. Или высказывания, которые не соответствуют действительно. В этом блоге я буду давать для них комментарии. Исключительно для собственного развлечения :). Итак Миф №1 IBProvider работает через ODBC: