|
|
|
Вопрос по организации БД
|
|||
|---|---|---|---|
|
#18+
sorry, если offtopic. Вообщем дали мне задание - запихнуть справочник по измерительным датчикам в БД. Полистал я справочник, оказалось, что во-первых существует несколько основных типов датчиков, различающихся по принципам измерения. А среди каждого типа еще разделение по разным признакам. В результате оказалось, что общих характеристик в рамках одного типов (по принципам измерения) не более 25-30 %. Остальная информация совершенно не структурированна, т.е. какие-то таблицы и характеристики есть у одних датчиков, а какие-то у других. Вот хотел бы я попросить совета у профессионалов, как в таких ситуациях поступают ? С одной стороны вроде и справочник и, казалось бы, синоним БД, но все так трудно организовать, потому что не хочется хранить неполную информацию, но и реляционность не хотелось бы терять. Может кому приходилось подобные справочники в БД заточать ? Спасибо. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.06.2003, 23:03 |
|
||
|
Вопрос по организации БД
|
|||
|---|---|---|---|
|
#18+
Вариант 1. Все-таки хранить неполную информацию. Код: plaintext 1. 2. Вариант 2. Кривой, но экономичный. В главной таблице всего несколько полей: название датчика, потом каунтер какой-нибудь, потом (возможно) несколько параметров, которые общие для всех, а потом - внимание! - тип с точки зрения того, какие еще параметры у него есть. Остальные данные сидят в других таблицах. Их количество равно количеству разных значений вышеупомянутого типа . Структура у всех разная. В каждой таблице первое поле - каунтер для связи с главной таблицей. Связь главной таблицы с остальными - один-к-одному, но для каждой записи в главной существует запись только в одной из остальных в зависимости от типа записи. Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. Вариант 3. Тоже кривой. Таблица одна, полей мало. Тоже есть тип записи, но он обозначает, каков смысл остальных полей. Отдельно системная таблица с соответствиями между полями и параметрами для разных типов. Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. А теперь пусть All расскажет, чем плох каждый вариант... ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 18.06.2003, 23:27 |
|
||
|
Вопрос по организации БД
|
|||
|---|---|---|---|
|
#18+
Вариант 4. Самый экономичный и самый гибкий. Таблица датчиков, таблица разных параметров, таблица значений параметров для датчиков. Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.06.2003, 08:19 |
|
||
|
|

start [/forum/topic.php?desktop=1&fid=45&tid=1681010]: |
0ms |
get settings: |
10ms |
get forum list: |
18ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
82ms |
get topic data: |
12ms |
get forum data: |
3ms |
get page messages: |
50ms |
get tp. blocked users: |
2ms |
| others: | 220ms |
| total: | 405ms |

| 0 / 0 |
