Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > Delphi программирование > БД в Delphi
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 25.11.2012, 14:40   #1
Михаил Юрьевич
Форумчанин
 
Аватар для Михаил Юрьевич
 
Регистрация: 25.12.2007
Сообщений: 655
По умолчанию Ветка в БД

Пользуюсь бд Absolut Database . Подскажите как создать вот такое дерево.

Например в базе данных есть таблица "Материал" в этой таблице создаются поля "Штукатурка", "Шпаклевка", "Краска" и т. д. А у каждого поля должно быть еще ветки , например у "Штукатурки" ----> "Цементная" , "гипсовая" и т. д. И так у каждого поля еще привязанные именно к данному полю. Как все это можно реализовать?
За частые поиски был забанен во всех известных
поисковых системах!
Михаил Юрьевич вне форума Ответить с цитированием
Старый 25.11.2012, 14:59   #2
Serge_Bliznykov
Старожил
 
Регистрация: 09.01.2008
Сообщений: 26,229
По умолчанию

Цитата:
создаются поля "Штукатурка", "Шпаклевка", "Краска" и т. д.
и сразу неверно. не должно быть таких полей! могут быть ЗАПИСИ "Штукатурка", "Шпаклевка", "Краска" и т. д.
Продумывайте сначала структуру БД.
Serge_Bliznykov вне форума Ответить с цитированием
Старый 25.11.2012, 15:10   #3
Михаил Юрьевич
Форумчанин
 
Аватар для Михаил Юрьевич
 
Регистрация: 25.12.2007
Сообщений: 655
По умолчанию

Да вот я про структуру и хочу спросить, а как к ним запросы сделать ,это я разберусь
За частые поиски был забанен во всех известных
поисковых системах!
Михаил Юрьевич вне форума Ответить с цитированием
Старый 26.11.2012, 20:34   #4
Михаил Юрьевич
Форумчанин
 
Аватар для Михаил Юрьевич
 
Регистрация: 25.12.2007
Сообщений: 655
По умолчанию

Я понять не могу , если есть запись "Штукатурка" ,то далее что должно быть, новая таблица, и эту запись нужно привязать к новой таблице?
За частые поиски был забанен во всех известных
поисковых системах!
Михаил Юрьевич вне форума Ответить с цитированием
Старый 26.11.2012, 20:52   #5
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

Вы явно путаете реляционные и древовидные СУБД. Любая реляционная СУБД это не более чем набор линейных таблиц аналогичных dbf-таблицам, естественно со множеством наворотов, которые и делают их более привлекательными, чем просто dbf. Внешние ключи или связи - это просто ссылка по значению поля записи одной таблицы на запись другой таблицы. Почитайте что-нибудь по поводу этих баз и исходя из этого и проектируйте. И ни каких там веток, узлов и деревьев нет.
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 26.11.2012, 22:09   #6
Михаил Юрьевич
Форумчанин
 
Аватар для Михаил Юрьевич
 
Регистрация: 25.12.2007
Сообщений: 655
По умолчанию

Как я понял,в моем вопросе нужна реляционная СУБД, правильно?
Но может быть для моего вопроса проще создавать новую таблицу, например таблица "Штукатурка" и в ней название штукатурки,характеристики и т.д
За частые поиски был забанен во всех известных
поисковых системах!

Последний раз редактировалось Михаил Юрьевич; 26.11.2012 в 22:12.
Михаил Юрьевич вне форума Ответить с цитированием
Старый 26.11.2012, 22:38   #7
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

характеристики и т.д это отсутствие информации для проектирования структуры. Соберите все возможные материалы, которые будут включены в базу, их возможные характеристики и признаки, обобщите данные и только после можно продумывать структуру. А так - это толочь воду в ступе
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Старый 26.11.2012, 23:04   #8
Михаил Юрьевич
Форумчанин
 
Аватар для Михаил Юрьевич
 
Регистрация: 25.12.2007
Сообщений: 655
По умолчанию

Спасибо за информацию, немного разобрался с реляционные таблицы и даже получилось их связать, в принципе понятно как это работает,если из главной удаляю
запись,то и из дочерней она удаляется, а вот как добавить новую запись и в главную и в дочернюю одновременно, пока не понял, в главную добавляю запись,а вот поля в дочерней как заполнить не пойму.
Я Вас прекрасно понимаю,тяжело разговаривать с человеком на разных языках,меня это тоже злит,поэтому на форуме до конца ни кому не охота обьяснять,нервы не выдерживают
За частые поиски был забанен во всех известных
поисковых системах!

Последний раз редактировалось Михаил Юрьевич; 26.11.2012 в 23:07.
Михаил Юрьевич вне форума Ответить с цитированием
Старый 26.11.2012, 23:51   #9
Yurk@
Участник клуба
 
Аватар для Yurk@
 
Регистрация: 19.12.2007
Сообщений: 1,100
По умолчанию

если БД поддерживает тригеры - можно на событии AfterInsert вставить тригер с
Код:
INSERT INTO table2 VALUES()
запросом на вторую таблицу.
На форуме: Помогаю за спасибо
ICQ\Skype: Это моё личное время ...
Yurk@ вне форума Ответить с цитированием
Старый 26.11.2012, 23:56   #10
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

Цитата:
если БД поддерживает тригеры - можно на событии AfterInsert вставить тригер с
Ну что это за терминалогия
Цитата:
в главную добавляю запись,а вот поля в дочерней как заполнить не пойму
После вставки в главную вставляйте в дочернюю. В том числе можно и в событии AfterInsert как выше сказали. При вставке в дочернюю нужно знать ключ записи главной таблицы. Что такое ключ (ключевое поле, уникальный идентификатор записи) надеюсь выяснили?
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию
Аватар вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
не работает ветка ELSE в php коде alhon PHP 3 28.09.2012 16:36
Ветка "Паскаль" + Халявщики = Мусоропровод? Dj_smart О форуме и сайтах клуба 3 05.04.2009 14:58
Нужна ли ветка отдельная .Net Hollander О форуме и сайтах клуба 5 25.04.2008 23:51