powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / ERD условный вывбор таблицы.
9 сообщений из 9, страница 1 из 1
ERD условный вывбор таблицы.
    #34468430
EXsql
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Заниматься разработкой бд я стал недавно. Хотелось бы получить ваш совет...
БД истории обучения человека...
Как я это вижу:

Таблица Образование (выделяем общие поля для образования):id, тип_образования, место_образования, город, дата_начала, дата_окончания...
Теперь выделяем отдельно каждый тип места образования:

Код: plaintext
1.
2.
Таблица Школа:id, Номер_школы, Специализация...
Таблица Колледж:id, Название, Специализация...
Таблица Университет:id, Название, Форма обучения, Специальность...

т.е. в зависимости от "тип_образования" мы выбираем Таблицу, из которой брать данные:
(Выбираем школы, в которых учился человек.)
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
SELECT
   *
FROM
   Образование , Школа
WHERE
   Образование.тип_образования= 1 
   AND
   Образование.место_образования=Школа.id

Вопрос: как это понятие описать в ERD и чем это я вообще занимаюсь? Может разумнее сделать все как-то по-дургому?
...
Рейтинг: 0 / 0
ERD условный вывбор таблицы.
    #34468469
stomsky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
EXsqlт.е. в зависимости от "тип_образования" мы выбираем Таблицу, из которой брать данные:
По-моему Вы сами на все ответили... Или стоит задача в интерфейсе пользователя отобразить ОДНУ таблицу "Образование" и в нее свалить все данные из трех таблиц с разными полями и типами?
Может желаемый результат поконкретнее опишете?
...
Рейтинг: 0 / 0
ERD условный вывбор таблицы.
    #34468513
EXsql
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Я ещё сам не знаю, как лучше.
Есть, 2 варианта:
1. Свалить данные в одну результирующую таблицу
Образование Школа Колледж Университет
____(1)_______(1)_____()________()
____(2)_______()______(1)_______()
____(3)_______()______()________(1)

Но, по-моему, это узвращение.

2. Делать отдельно выборку по каждому типу учебного заведения(в принципе, и редактирование и зменение и добавление будут иметь разный вид, поэтому этот вариант наиболее приемлем)

Вопрос: КАК ЭТОТ ПРИЕМ(УСЛОВНОГО ВЫБОРА ТАБЛИЦЫ) ОТОБРАЗИТЬ НА ERD ДИАГРАММЕ И КАК ЭТО ПРИЕМ НАЗЫВАЕТСЯ ? (Теоретический аспект)
...
Рейтинг: 0 / 0
ERD условный вывбор таблицы.
    #34468796
EXsqlЗаниматься разработкой бд я стал недавно. Хотелось бы получить ваш совет...
БД истории обучения человека...
Как я это вижу:

Таблица Образование (выделяем общие поля для образования):id, тип_образования, место_образования, город, дата_начала, дата_окончания...
Теперь выделяем отдельно каждый тип места образования:

Код: plaintext
1.
2.
Таблица Школа:id, Номер_школы, Специализация...
Таблица Колледж:id, Название, Специализация...
Таблица Университет:id, Название, Форма обучения, Специальность...

т.е. в зависимости от "тип_образования" мы выбираем Таблицу, из которой брать данные:
(Выбираем шкоАлы, в которых учился человек.)
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
SELECT
   *
FROM
   Образование , Школа
WHERE
   Образование.тип_образования= 1 
   AND
   Образование.место_образования=Школа.id

Вопрос: как это понятие описать в ERD и чем это я вообще занимаюсь? Может разумнее сделать все как-то по-дургому?
Я бы сделал таблицы:
Код: plaintext
1.
2.
3.
Образовательное учреждение(id, Название, Форма обучения, id_типа_образ_учреждения,...)

Типы_Образ_учреждений(id_типа_образ_учреждения, Название...)
А "Специальность" перенес бы в таблицу "Образование"...
...
Рейтинг: 0 / 0
ERD условный вывбор таблицы.
    #34468835
EXsql
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Я бы сделал таблицы:
Код: plaintext
1.
2.
3.
Образовательное учреждение(id, Название, Форма обучения, id_типа_образ_учреждения,...)

Типы_Образ_учреждений(id_типа_образ_учреждения, Название...)
А "Специальность" перенес бы в таблицу "Образование"...[/quot]

Вариант, мне кажется, понял... Но проблема в том, что у каждого типа учебного учреждения разные поля (Специализация не Специальность, Номер Школы не Название и т.п.). Мне кажется, что необходимо разделить их на отдельные таблицы. Нехорошо было бы объединять эти данные в Образовательное_учреждение.
А вот какую таблицу использовать(Школа, Колледж, Университет...), зависит от id_типа_образ_учреждения(я был неправ, когда назвал это поле тип_образования), по сути.
...
Рейтинг: 0 / 0
ERD условный вывбор таблицы.
    #34468871
EXsql
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Есть ли вообще понятие условного выбора таблицы в ERD в зависимости от значения одного из полей???

Механически это можно сделать, конечно, так:
Код: plaintext
1.
2.
3.
4.
условное_поле
id_первого_значения_условия
id_второго_значения_условия
id_третего_значения_условия
...
Но, просто, тут 2 момента: 1. зачем импользовать дополнительные поля, когда данные можно записывать в одно поле. 2. Если появится новое условие(в верхнем примере - новый тип уч. заведения), то прийдется переделывать структуру базы.
...
Рейтинг: 0 / 0
ERD условный вывбор таблицы.
    #34469033
stomsky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
EXsqlНо проблема в том, что у каждого типа учебного учреждения разные поля (Специализация не Специальность, Номер Школы не Название и т.п.). Мне кажется, что необходимо разделить их на отдельные таблицы.
Мне тоже кажется, что для твоего случая это самое верное решение!

EXsqlЕсть ли вообще понятие условного выбора таблицы в ERD в зависимости от значения одного из полей???
Есть. Только ссылку привести не могу. Но передо мной лежит книжка (обычная бумажная) и в ней есть маленькая глава "Взаимоисключающие отношения" (exclusive relationship) в ERD-диаграмах.
Попробуй поискать поэтим ключевым словам...
...
Рейтинг: 0 / 0
ERD условный вывбор таблицы.
    #34469083
EXsql
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
За-ши-би-сь! stomsky, ты лучшый!
Это то, что надо:

автор
Exclusive-Or Relationship

If an entity instance may have either one relationship or another, but not both, the constraint may be modeled with an exclusive-or relationship, represented as a tree with a solid dot where the tree branches. The following diagram indicates that each convict is assigned to a prison, or to a parole officer, but not both:
...
Рейтинг: 0 / 0
ERD условный вывбор таблицы.
    #34470031
ModelR
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Картинка OK:). Реализация обсуждалась
...
Рейтинг: 0 / 0
9 сообщений из 9, страница 1 из 1
Форумы / Проектирование БД [игнор отключен] [закрыт для гостей] / ERD условный вывбор таблицы.
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]