Рекурсивная процедура поиска элементов ветки дерева в FireBird и Interbase

Время от времени приходится общаться с СУБД FireBird и Interbase. И вот недавно возникла необходимость поиска и выбора всех вложенных элементов дерева. В моём случае необходимо было удалить все вложенные группы дерева при удалении родительской группы и в дальнейшем организовать поиск всех вложенных элементов.

Удаление можно сделать на триггерах, а вот с поиском так не прокатит. Поэтому используем рекурсивную процедуру выборки. (заранее оговорюсь, рекурсия — это вариант для небольших и не очень нагруженных БД, если база большая и нагрузка на СУБД планируется существенная, то рекурсии лучше избежать, пример того как это можно сделать будет ниже)

Подробнее

Как в InterBase сделать INSERT нескольких строк одним скриптом

Давно меня интересовал этот вопрос! Как же так сделать? Вставить одним запросом в таблицу несколько строк. Дело в том, что в СУБД InterBase в отличие от множества других СУБД запрос типа:

insert into tabble1
    (param1, param2)
         values
             (1, 'Сидоров'), (2, 'Петров'), (3, 'Иванов');

выполнить, оказывается нельзя.

Даже не знаю по какой причине, но нельзя и всё тут. Не работает такое.
Но ведь очень хочется!!!
Ведь вставка за один раз множества записей сильно экономит время, делается быстрее.

И оказывается есть таки альтернатива!

Подробнее

Работа с базой данных FireBird и InterBase из C#

Часто сталкиваюсь с необходимостью взаимодействия различных приложений написанных на .NET с базами данных FireBird и InterBase. Поэтому решил написать пример для памяти, чтобы в следующий раз не искать по собственным исходникам а быстренько заглянуть сюда. Возможно кому-то тоже пригодится.

Итак, чтобы подключиться к базе данных нам потребуется Коннектор: «FirebirdClient-2.5.0-Alpha2.msi» — в моём случае такой, возможно уже есть новее. (вбиваете в поисковике — найдётся).

После установки в Program Files появится папочка FirebirdClient 2.0 — в ней лежат необходимые библиотеки. Добавляем оттуда в наш проект через «Add Reference» библиотеку: FirebirdSql.Data.FirebirdClient.dll

Подробнее