![]() |
|
![]() ![]() ![]() |
|
CompWorm |
|
|||
![]() Допеределыватель ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1689 Регистрация: 6.12.2004 Где: / Репутация: нет Всего: 31 |
кто-нить че-нить слышал про объектные БД и как их юзать в Дельфи ????
![]() вообще, я так понимаю, вопрос довольно глухой... поэтому как бы вы предложили организовать обычную реляционную бд под хранение классов, объектов и организации полиморфизма и наследования? ![]() |
|||
|
||||
skyboy |
|
|||
неОпытный ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 9820 Регистрация: 18.5.2006 Где: Днепропетровск Репутация: нет Всего: 260 |
никак. БД - для хранения данных. Классы/объекты - это данные+методы. Дело не в том, что нельзя хранить, но объектная БД - это БД с объектной структурой хранения/доступа. Т.е. когда у тебя данные имеют четкую иерархию. Самый примитивный, но и самый "понятный" пример - хранение графа в БД. Для реляционной БД выход - в хранении пар "родитель+потомок", в постреляционной в качестве поля одной записи можно задать таблицу(таблица-в-таблице) - тот же рекурсивный алгоритм выборки, но чуть проще, в объектной хранятся объекты типа "узел", некоторое поле которого ссылается на другие объекты типа "узел". К объектным СУБД относится, в первую очередь, Cache. К объектно-ориентированным - Oracle и PostgreSQL Реляционных просто море ![]() ----- От себя добавлю, что если речь идет о хранении именно кода приложения, а не алгоритмов обработки данных в БД, то лучше придумать другой путь:
|
|||
|
||||
CompWorm |
|
|||
![]() Допеределыватель ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1689 Регистрация: 6.12.2004 Где: / Репутация: нет Всего: 31 |
спасибо за ответ
![]() правда, для меня он оказался более чем ожиданным))) ну, я не хочу пока делать такие сложности, как хранение объектов дельфи с последующей их подгрузкой... понятно, что в отношении обычного аксесса, скажем, это чрезвычайно не удобно. я ставлю вопрос о примитивном хранении некой произвольной объектно-классовой структуры... ну например, просто записать класс со свойствами "коробка", как наследник класса "куб" и связать их с классом "комната" и его экземпляром, в виде объекта "комната" ))) к примеру в аксессе это можно реализовать четырьмя табличками: 1 класс "куб" с полями под свойства; 2 класс "коробка" со своими полями-свойствами; 3 класс "комната" 3 табличка со всеми объектами с указателями на их классы, включая наш объект "комната", ссылающийся на свой класс... еще раз, я понимаю что это тупо выглядит, поэтому и задаю вопрос, как бы вы предложили решить проблему ![]() ЗЫ ибо никакой информации по работе с ООСУБД из дельфи я найти пока не могу Это сообщение отредактировал(а) CompWorm - 10.10.2007, 18:31 |
|||
|
||||
Anark1 |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 622 Регистрация: 15.12.2006 Где: RF -> Moscow Репутация: 1 Всего: 11 |
А как же иерархические БД? По-моему под данное определение больше подходит именно этот тип.
skyboy, если я правильно понял, то объектные и иерархические несколько разные вещи. |
|||
|
||||
Anark1 |
|
|||
![]() Опытный ![]() ![]() Профиль Группа: Участник Сообщений: 622 Регистрация: 15.12.2006 Где: RF -> Moscow Репутация: 1 Всего: 11 |
||||
|
||||
CompWorm |
|
|||
![]() Допеределыватель ![]() ![]() ![]() Профиль Группа: Участник Клуба Сообщений: 1689 Регистрация: 6.12.2004 Где: / Репутация: нет Всего: 31 |
Anark1,
отличная заметка о разнице ООБД и Иерархическими БД... в связи с этим, вот я нашел статью о Иерархических структурах данных в реляционных БД примеры там приводятся для Interbase 6... и в дополнение к этому, крохотная статья ![]() как работатью с Interbase при помощи Дельфи |
|||
|
||||
skyboy |
|
|||
неОпытный ![]() ![]() ![]() ![]() Профиль Группа: Модератор Сообщений: 9820 Регистрация: 18.5.2006 Где: Днепропетровск Репутация: нет Всего: 260 |
||||
|
||||
![]() ![]() ![]() |
Правила форума "Delphi: Базы данных и репортинг" | |
|
Запрещено: 1. Публиковать ссылки на вскрытые компоненты 2. Обсуждать взлом компонентов и делиться вскрытыми компонентами Обязательно указание: 1. Базы данных (Paradox, Oracle и т.п.) 2. Способа доступа (ADO, BDE и т.д.)
FAQ раздела лежит здесь! Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Vit, Петрович. |
1 Пользователей читают эту тему (1 Гостей и 0 Скрытых Пользователей) | |
0 Пользователей: | |
« Предыдущая тема | Delphi: Базы данных и репортинг | Следующая тема » |
|
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности Powered by Invision Power Board(R) 1.3 © 2003 IPS, Inc. |