Огляд можливостей ibprovider

Ласкаво просимо в форум.

Тема: "Світ Interbase .." або "FireBird .." Що вибрати

У зв'язку з цим питання:

· Яка з цих книг доступніше для новачка, який щойно розпочинає вивчати СУБД і проектування БД

· Якою мірою ці книги, так би мовити, взаємозамінні. Тобто наскільки знання, отримані з книги про InterBase (наприклад) застосовні для роботи з FireBird і навпаки.

Заздалегідь дякую всім за відповіді.

З повагою, Londinium

1. Якщо ти зовсім новачок, то бери першу - в ній доступніше.

2. Якщо ти новачок тільки в ІБ, то краще другу.

3. Другу книжку бажано мати під рукою по-любому - незалежно від того, чи є перша.

4. Важливо - у другій немає нихрена (здається) про бібліотеки доступу (IBX, FIBPlus).

5. Знання про InterBase, отримані з першої книги, застосовні до FireBird практично в повному обсязі.

Книга: Світ InterBase. Архітектура, адміністрування та розробка додатків баз даних в InterBase / FireBird / Yaffil

Огляд можливостей IBProvider

Огляд можливостей IBProvider

* Можливість роботи з усією лінійкою СУБД InterBase, починаючи з версії 4 х і закінчуючи клонами InieiBase 6 - Firebird і Yattil Мінімальним умовою роботи IBProvider є наявність на комп'ютері клієнта динамічної бібліотеки GDS32.dll від InterBase 4 (див. Розділ "Склад модулів InterBase" ( ч. 4)). IBProvider самостійно визначає рівень можливостей сервера (так званий base level) і клієнтської частини (т е. Можливості GDS32.dll). а також діалект бази даних і автоматично підлаштовується під ці параметри.

* Підтримка всіх типів даних InterBase. Є підтримка BLOB-полів (бінарних і текстових), масивів і типів DECIMAL / NUMERIC (див. Розділ "Типи даних" (ч. 1)).

* Підтримка storage-об'єктів для роботи з BLOB-полями. Ці об'єкти можуть повертатися клієнту і прийматися в якості вхідних параметрів.

* Практично весь спектр OLE DB-типів. Крім типів, безпосередньо підтримуваних InterBase, IBProvider здатний приймати і повертати беззнакові цілі числа, булеві значення, рядки UNICODE і т. Д.

* Вбудована підтримка конвертації даних з одного типу в інший, перетворення масивів, бінарного і текстового подання BLOB-полів. Для перетворення типу даних NUMERIC використовується бібліотека для роботи з великими цілими числами, що забезпечує природну підтримку 64-бітових цілих.

* Підтримка многопоточной роботи. Компоненти провайдера самостійно забезпечують синхронізацію доступу до своїх ресурсів, тому клієнт може не турбуватися про проблеми паралельної роботи з одним підключенням до бази даних з декількох потоків однієї програми.

* Отказоустойчивость. Для компонентів, які працюють у складі серверних додатків, виключно важлива надійність. При розробці провайдера повсюдно використовуються потужні можливості мови Сі ++ для автоматичного звільнення ресурсів і обробки виняткових ситуацій.

* Трідцатідвухбітовий кеш обраних рядків результуючого безлічі. Застосування динамічної системи пріоритетів дозволяє утримувати в заданому обсязі пам'яті тільки найбільш часто використовувані рядка, а хеш таблиця забезпечує ефективну навігацію по вмісту кеша. Таким чином, LBProvider здатний з однаковою продуктивністю обробляти як невеликі за розміром результуючі безлічі, так і дуже великі, навіть перевищують обсяг доступної оперативної пам'яті.

* Оптимізація роботи з оперативною пам'яттю. По-перше, IBProvider використовує дві власні "купи" (heap) для динамічного виділення пам'яті. Це знижує навантаження на системну купу. По-друге, IBProvider інтенсивно запускає спільно використовувані об'єкти, що зберігають інформацію тільки для читання. Під час роботи IBProvider створює глобальний пул (pool) об'єктів, що призводить до економії пам'яті і дозволяє зменшити час створення і ініціалізації об'єктів і, таким чином, поліпшити загальну продуктивність програми баз даних.

* Повна підтримка синтаксису SQL. Також підтримуються команди для створення / видалення бази даних і явного управління транзакціями.

* Робота з базою даних в режимі автоматичного запуск і підтвердження транзакцій (autocommit). За замовчуванням цей режим вимкнений, так як він не є оптимальним для роботи з InterBase, але при необхідності його можна включити.

* Повна підтримка параметрезованих запитів. Можна використовувати іменовані і неіменовані параметри, самостійно або автоматично формувати опису параметрів і передавати їх значення в обох напрямках (in-out-параметри).

Можливість отримання метаданих з бази даних InterBase. Це списки таблиць, колонок, збережених процедур, індексів, обмежень і т. Д. (Всього 26 видів метаданих). Крім CASE-засобів і систем побудови звітів, ця інформація использ> ється в Microsoft Distributed Query для виконання гетерогенних запитів до кількох баз даних під керуванням різних (!) SQL-серверів (наприклад, MS SQL) за допомогою OLE DB-провайдерів.

* Ретельне дотримання парадигм об'єктно-орієнтованого проектування, а також дворічна тестування в реальних системах СУБД гарантують високий рівень надійності і стабільності IBProvider, який ідеально підходить для використання в складі програмного забезпечення з цілодобовим режимом роботи.

На даний момент, залишивши позаду великий обсяг робіт зі створення OLE DB для InterBase, можна переглянути роль і призначення цього драйвера. Витіснивши оригінальну клієнтську частину GDS32.DLL на другий план, IBProvider надає потужний об'єктно-орієнтована низькорівневий клієнтський API для роботи з InterBase. Вбудовуючись в додатки баз даних, OLE DB-провайдер здатний взяти на себе всю роботу по організації взаємодії з сервером бази даних. Надання ресурсів для роботи з базою даних у вигляді СОМ-об'єктів знімає традиційні обмеження, що накладаються на клієнтські програми баз даних. Додаток можна дробити на модулі, які можна створювати за допомогою різних систем програмування. Використовуючи сценарії, написані на VBScript / JScript, в програми можна додавати логіку, яку неможливо реалізувати на рівні бази даних. OLE DB є загальновизнаним промисловим стандартом доступу до даних, що дозволяє легко розгортати і керувати програмами, розробленими з використанням IBProvider.

Таким чином, розробка великих масштабованих клієнтських додатків для InterBase за допомогою засобів розробки компанії Microsoft, а також будь-яких інших систем, що підтримують OLE DB, стає більш реальною і доступною, ніж можна було собі уявити раніше.