Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2008.03.16;
Скачать: CL | DM;

Вниз

Обращение к разным БД в одном запросе   Найти похожие ветки 

 
olevacho_ ©   (2007-10-27 09:59) [0]

Как можно в одном СКЛ запросе обратится к разным БД. Например вставить записи в таблицу из одной БД полученные из набора данных из таблицы другой базы? Это нужно реализовать на Firebird.


 
atruhin ©   (2007-10-27 12:42) [1]

Никак. Возможно будет в FB 3.0 т.е. примерно через годик.


 
PEAKTOP ©   (2007-10-27 14:54) [2]

> Никак. Возможно будет в FB 3.0 т.е. примерно через годик.

Ты не настоящий проктолог ! В селективном запросе - действительно никак. Но достучаться  до другой базы из хранимой процедуры можно через UDF.


 
atruhin ©   (2007-10-27 16:21) [3]

> [2] PEAKTOP ©   (27.10.07 14:54)
> Ты не настоящий проктолог ! В селективном запросе - действительно
> никак. Но достучаться  до другой базы из хранимой процедуры
> можно через UDF.

:))). Только еще кэш соединений с БД организовать в модуле UDF, учесть отличие супера от классика и т.д. :)))

Кстати в некоторых случаях можно использовать external table, т.е. с клиента на одном сервере, сформировал набор данных,
потом запросом с другого закачал.


 
PEAKTOP ©   (2007-10-27 17:53) [4]

> Только еще кэш соединений с БД организовать в модуле UDF,  учесть отличие супера от классика и т.д. :)))


Извините, батенька, но вопрос звучал как "можно ли организовать", а не "можно ли организовать, чтобы не через задницу" :))


 
olevacho_ ©   (2007-10-27 19:37) [5]


> Никак. Возможно будет в FB 3.0 т.е. примерно через годик.

А в Interbase можно?


 
PEAKTOP ©   (2007-10-28 02:11) [6]

Напомню Вам вопрос:

> Как можно в одном СКЛ запросе обратится к разным БД. Например
> вставить записи в таблицу из одной БД полученные из набора
> данных из таблицы другой базы? Это нужно реализовать на
> Firebird.
>

Ответы с 1 по 4 можете считать стебом потому, что действительно никак.

То, что Вам требуется, называется задачей репликации (синхронизации данных двух БД), потребность в решении которой возникает, когда либо РСУБД (РаспределеннаяСУБД) и данные из филиалов сливаются в ЦентральнуюБазу, либо репликация обработанных данных ЦентральнойБазы в копию, которая находится у провайдера и к ней идет обращение из скриптов сайта.

Допустим, что вариант РСУБД. Структура базы по всем филиалам предприятия постоянная, но есть справочники (например "ТОВАРЫ" и "КЛИЕНТЫ"), которые пользователи на филиалах ведут самостоятельно и ЦентральнаяБаза в принципе не может знать, что туда вколотят.
1) Создается генератор сессии CREATE GENERATOR GEN_SESSION_ID.
2) Создается в ЦентральнойБазе таблица-клон подгружаемого (только список доменов без ограничений ссылочной целостности) справочника плюс один домен - SESSION_ID
3) В момент старта клиентское ПО получает идентификатор сессии.
----------------------------------------------------------
Подгрузка:
4) Все данные таблицы из подгружаемой базы сливаются в таблицу-клон ЦентральнойБазы с идентификатором сессии.
5) Вызывается хранимая процедура, которой передается идентификатор сессии, и которая определят вставлять/не вставлять данные в основной справочник (тут уже Ваша личная бизнес-логика). Эта же процедура может вести еще одну таблицу, которая хранит значения "погружен" или "не подгружен" элемент справочника ранее, и если подгружен, то с какого филиала.
6) После выполнения хранимая процедура чистит таблицу-клон от данных с нужным идентификатором сессии.

Все изложенное выше - как вариант решения задачи, который не претендует на роль истины в последней инстанции.


 
Sergey13 ©   (2007-10-29 08:39) [7]

> [0] olevacho_ ©   (27.10.07 09:59)

БДЕ допускает гетерогенные запросы.


 
atruhin ©   (2007-10-29 10:55) [8]


> БДЕ допускает гетерогенные запросы.

Но делает то это на клиенте. На клиенте много вариантов.


 
Sergey13 ©   (2007-10-29 11:00) [9]

> [1] atruhin ©   (27.10.07 12:42)
> Никак.

> [8] atruhin ©   (29.10.07 10:55)
> На клиенте много вариантов.

Как понимать тебя? 8-)



Страницы: 1 вся ветка

Текущий архив: 2008.03.16;
Скачать: CL | DM;

Наверх




Память: 0.49 MB
Время: 0.015 c
11-1185173900
rvi
2007-07-23 10:58
2008.03.16
Отчет


2-1202950288
Lampochka
2008-02-14 03:51
2008.03.16
Поиск файла в NTFS


15-1202242276
Kerk
2008-02-05 23:11
2008.03.16
Персональная страница Google


11-1186120923
Alexey_k
2007-08-03 10:02
2008.03.16
Нужен файл KOL_unicode.inc


15-1202189806
tButton
2008-02-05 08:36
2008.03.16
длительный процесс (риторический вопрос)