работа с несколькими БД

Модераторы: kdv, CyberMax

Ответить
DDark
Сообщения: 6
Зарегистрирован: 03 май 2011, 21:19

работа с несколькими БД

Сообщение DDark » 03 май 2011, 21:21

прочитал данную статью ...
подключил к делфи БД фаербердовскую, вызываю встроенные в БД процедуры - работает
однако условие изменилось: у меня есть 8 одинаковых баз данных по своей структуре и разных по содержанию и одинаковый ко всем БД список запросов, одни из которых должны выбирать из одной из БД, а некоторые - из нескольких. Причем запросы нужно безболезненно добавлять/редактировать/удалять - т.е они должны быть как то отдельно от конкретной БД
также должна быть функция добавления пустой БД со структурой предыдущих

подводя итог: нужно организовать работу с кучей одинаковых БД одним и тем же набором встроенных процедур - не обязательно через IBProvider, т.к там походу это проблематично...
Последний раз редактировалось DDark 05 май 2011, 00:48, всего редактировалось 1 раз.

Dimitry Sibiryakov
Заслуженный разработчик
Сообщения: 1436
Зарегистрирован: 15 сен 2005, 09:05

Re: работа с несколькими БД

Сообщение Dimitry Sibiryakov » 04 май 2011, 14:28

А в чём фенька этого геморроя - иметь 8 баз вместо одной?

kdv
Forum Admin
Сообщения: 6595
Зарегистрирован: 25 окт 2004, 18:07

Re: работа с несколькими БД

Сообщение kdv » 04 май 2011, 15:22

ссылка кривая - стесняетесь целиком запостить?

Если надо делать запросы к 8 базам - делайте через что угодно, на мой взгляд никакой разницы нет. Можно использовать execute statement в 2.5, чтобы обновлять базы из одной, но все это выглядит страшновато, потому что действительно неясен смысл синхронизации 8 "одинаковых по структуре баз".

По-моему, исходного вопроса как такового не существует. То есть, синхронизировать или обновлять надо не базы, а конкретные таблицы и данные, соответственно, по мере приближения к деталям вопрос должен максимально проясниться.

Вопрос про "создание базы со структурой предыдущих" игнорирую, т.к. это что-то для начинающих, или не имеет смысла.

DDark
Сообщения: 6
Зарегистрирован: 03 май 2011, 21:19

Re: работа с несколькими БД

Сообщение DDark » 05 май 2011, 00:50

больше всего меня смутила необходимость вынесения процедур за базы данных... до сих пор не нашел толкового объяснения как правильнее это сделать.. т.е мне надо: базы - отдельно, процедуры к ним - отдельно.. ну чтобы, так сказать, базы являлись параметрами процедур

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

kdv
Forum Admin
Сообщения: 6595
Зарегистрирован: 25 окт 2004, 18:07

Re: работа с несколькими БД

Сообщение kdv » 07 май 2011, 00:29

"процедура снаружи базы данных" - это приложение, которое работает с базой данных. Не знаю, чего тут мудрить.

DDark
Сообщения: 6
Зарегистрирован: 03 май 2011, 21:19

Re: работа с несколькими БД

Сообщение DDark » 07 май 2011, 09:52

да я курсовой пишу.. и вот преподу захотелось непременно так... при этом как подобное реализовать он не знает)))

Dimitry Sibiryakov
Заслуженный разработчик
Сообщения: 1436
Зарегистрирован: 15 сен 2005, 09:05

Re: работа с несколькими БД

Сообщение Dimitry Sibiryakov » 07 май 2011, 14:46

DDark писал(а):8 одинаковых БД получились путем раздачи чистой базы 8ми различным представительствам, которые не имеют возможности работы по сети.. вот теперь нужно из них вытаскивать сведения как по представительствам отдельно, так и по нескольким сразу
Ну так теперь консолидируй данные из этих баз в одну и будет тебе счастье.

DDark
Сообщения: 6
Зарегистрирован: 03 май 2011, 21:19

Re: работа с несколькими БД

Сообщение DDark » 10 май 2011, 17:26

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

kdv
Forum Admin
Сообщения: 6595
Зарегистрирован: 25 окт 2004, 18:07

Re: работа с несколькими БД

Сообщение kdv » 10 май 2011, 22:28

ссылку убрал, т.к. не понял, при чем тут этот драйвер, когда вы пишете приложение на дельфи. Это как написать, что я пользуюсь одеколоном ..., и пишу приложения на дельфи и фб.

Насчет задания - или вы невнимательно читаете, или там ненормальная терминология, или действительно написан бред.
Допустим, из процедуры можно работать с другой БД (в ФБ 2.5). И можно написать триггеры с такими процедурами так, что таблицы в разных БД будут синхронизироваться. Если вам нужно именно это - так и делайте.

DDark
Сообщения: 6
Зарегистрирован: 03 май 2011, 21:19

Re: работа с несколькими БД

Сообщение DDark » 10 май 2011, 22:34

kdv писал(а): Насчет задания - или вы невнимательно читаете, или там ненормальная терминология, или действительно написан бред.
Допустим, из процедуры можно работать с другой БД (в ФБ 2.5). И можно написать триггеры с такими процедурами так, что таблицы в разных БД будут синхронизироваться. Если вам нужно именно это - так и делайте.
да мне и не нужна синхронизация.. но в целом, да - буду пробовать через execute statement - в цикле подключать различные БД путем изменения строки подключения и как то скидывать результаты выборки или в общую кучу или по отдельности.. геморно, но должно получится) спсибо)

kdv
Forum Admin
Сообщения: 6595
Зарегистрирован: 25 окт 2004, 18:07

Re: работа с несколькими БД

Сообщение kdv » 11 май 2011, 10:04

мда. и что, правда будете писать процедуру, которая лезет к 8-ми базам по очереди и вытаскивает данные какого-то запроса по очереди? хрень ведь какая-то...

DDark
Сообщения: 6
Зарегистрирован: 03 май 2011, 21:19

Re: работа с несколькими БД

Сообщение DDark » 12 май 2011, 18:40

ну препод сказал так и делать... отдельную БД с процедурами, которые вытаскивают из N-ного количества баз нужную инфу... а из приложения передавать в качестве аргумента пути к базам через запятую :D ну ладно.. сделаю)

Ответить