Дизайн базы данных для загрузки пресетов - PullRequest
0 голосов
/ 14 сентября 2010

Новичок с базами данных, я хотел бы посоветовать, пожалуйста.
У меня есть агентства, которые могут загружать фотографии.
Стандартное каждое агентство может загружать «средние» и «большие» фотографии.
Теперь на их странице аккаунта я бы хотел, чтобы они сделали дополнительные пользовательские пресеты и управляли ими.

Я посмотрел в базе данных некоторых программ для блогов, как они обрабатывают категории, и обернул голову вокруг этого примера. Это правильный подход?
Приветствия

Агентство 1 имеет предустановку "средний" и "большой"
Агентство 2 имеет предустановку «средний», «большой» и «билл кастом»

-----------
| presets |
-----------------------------------------------
| preset_id | preset_name | preset_dimensions |
-----------------------------------------------
|     1     |    medium   |      800x600      |
|     2     |    large    |     3000x2000     |
|     3     | Bill custom |      640x420      |
-----------------------------------------------

----------------
| preset_assoc |
------------------------------------------------------------
| presassoc_id | presassoc_preset_id | presassoc_agency_id |
------------------------------------------------------------
|       1      |           1         |          1          |
|       2      |           2         |          1          |
|       3      |           1         |          2          |
|       4      |           2         |          2          |
|       5      |           3         |          2          |
------------------------------------------------------------
------------
| agencies |
---------------------------
| agency_id | agency_name |
---------------------------
|     1     |   Joe ltd   |
|     2     |   Bill inc  |
---------------------------

1 Ответ

2 голосов
/ 14 сентября 2010

Подход правильный.Поскольку у вас есть отношение NxN (1 агентство может иметь несколько предустановок, и один и тот же пресет может использоваться несколькими агентствами), вам необходимо иметь объединяющую таблицу.Единственным сомнительным моментом является то, что preset_assoc не должен иметь presassoc_id, потому что два других столбца могут использоваться в качестве объединенного первичного ключа.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...