Книга: Firebird РУКОВОДСТВО РАЗРАБОТЧИКА БАЗ ДАННЫХ
Курсоры для реентерабельных соединений
Курсоры для реентерабельных соединений
Для выполнения реентерабельного соединения сервер поддерживает один внутренний курсор для каждого потока в пределах образа одной таблицы. Концептуально он трактует контексты двух курсоров, как если бы они были отдельными таблицами. В этой ситуации синтаксис ссылок на таблицу обязательно использует алиасы для различения курсоров двух потоков.
В следующем примере каждое подразделение организации хранится с родительским идентификатором, который указывает на первичный ключ его руководящего подразделения. Приведенный далее запрос трактует подразделения и родительские подразделения, как если бы они были двумя таблицами:
SELECT
D1.XD,
D1.PARENTID,
D1.DESCRIPTION AS DEPARTMENT,
D2.DESCRIPTION AS PARENT_DEPT
FROM DEPARTMENT D1
LEFT JOIN DEPARTMENT D2
/* левое соединение обращается к корню дерева, ID 100 */
ON Dl.PARENTID = D2.ID;
На рис. 22.6 проиллюстрировано, как выбираются записи потомков в реентерабельном обращении к таблице DEPARTMENT.
Рис. 22.6. Внутренние курсоры для простого реентерабельного соединения Простой двухуровневый результат показан на рис. 22.7.
Результат этого запроса очень простой - одноуровневая денормализация. Операции получения древовидного результата для таблиц такого вида часто являются рекурсивными, они используют хранимые процедуры для реализации и управления рекурсией[79].
Рис. 22.7. Результат простого реентерабельного соединения
- Улучшенный протокол локальных соединений (XNET)
- Курсоры
- Использование PPP-соединений
- 6.3. Изображение резьбовых соединений с крепежными деталями
- Туннелирование X-соединений через SSH
- Эффективность одновременных соединений
- 6.2. Изображение резьбовых соединений
- 2.2.1 Коммуникации с созданием соединений (TCP)
- 2.2.2 Коммуникации без создания соединений (UDP)
- Глава 6 Изображение резьбы и резьбовых соединений
- Протокол установления соединений
- В простых случаях пытайтесь обойтись без многопоточного выполнения, используя курсоры ожидания