| Версия для печати темы
Нажмите сюда для просмотра этой темы в оригинальном формате |
| Форум программистов > MS Access > Множественные значения полей |
| Автор: Keeper89 14.4.2009, 22:15 |
| Доброго времени суток! Имеется БД Access, 2 таблицы из которых - Оборудование и Кабинет. В таблице Оборудование содержится список всего оборудования, 1 столбец. В таблице Кабинет есть соответствующее поле, где указывается имеющееся оборудования. Вопрос в следующем: можно ли в поле Кабинет.Оборудование занести список значений из таблицы Оборудование. (Например, чтобы в конкретном кабинете №12 было указано: стол, стул, ПК). Заранее спасибо. |
| Автор: Veetkoosz 14.4.2009, 23:35 |
| Для такой модели следует наоборот в таблице Оборудование создать поле КабинетИД. Тогда в каждом кабинете может быть много оборудования (То есть несколько записей в таблице Оборудование с одинаковым значением поля КабинетИД). Это в случае, что каждой единице оборудования соответствует запись в таблице Оборудование. Если же в таблице Оборудование содержится только тип оборудования (например, на фирме 10 проекторов, которым соответствует одна запись "ПРОЕКТОР" в таблице Оборудование), тогда следует завести новую таблицу ОборудованиеКабинета с полями Номер_Кабинета, Номер_Оборудования и заносить в эту новую таблицу связки кабинета и оборудования. В общем, азы построения БД. Почитайте... |
| Автор: Keeper89 14.4.2009, 23:54 |
То, что вы объяснили ежу понятно, интересует именно этот вопрос про множество значений поля. Не хотелось бы создавать таблицу для каждого кабинета. |
| Автор: Akina 15.4.2009, 07:55 |
| Сущности Кабинет и Оборудование соотносятся как много-ко-много. Значит, три таблицы: Оборудование: ИД, Наименование, ... Кабинет: ИД, номер, ... Размещение: ИД, ОборудованиеИД, КабинетИД, .. Добавлено через 31 секунду А азы построения БД всё-таки прочитайте. Хоть раз в жизни это надо сделать. |
| Автор: Akina 15.4.2009, 20:00 |
| Можно. Уголовный кодекс не запрещает. |
| Автор: Keeper89 15.4.2009, 22:20 |
Спасибо. |
| Автор: bopoha 16.4.2009, 10:02 | ||
В одно поле занести несколько значений Access не позволяет. Для этого создаются таблицы связей, как указал Akina. |
| Автор: Akina 16.4.2009, 11:16 | ||
Ну как сказать... Во-первых, находятся гении, которые запихивают все значения в одно текстовое поле, разделяя его чем-нить вроде запятых. Потом, правда, изумляются, что элементарный запрос на поиск или сортировка превращаются в некое трёхэтажное безобразие, ещё и тормозящее безбожно. Во-вторых (убил бы кретинов!), прогеры из Некрософта ввели в Аксесс-2007 возможность создания однотабличного много-ко-много... коню понятно, что где-то они прячут промежуточную служебную таблицу, но доступа к ней не дают вообще, потому использование этой фичи есть безусловный вред, расхолаживающий программиста средней руки и безнадёжно портящий начинающего - опытный-то посмотрит, хмыкнет, пошлёт в даль туманную и сдлает как положено. |
| Автор: Keeper89 22.4.2009, 16:50 | ||
Спасибо, как раз то, что я хотел услышать. |