Я пытаюсь выяснить, как создать базу данных, состоящую из полей, взятых из документа XML, который является лицензией для нашего программного обеспечения. Это отечественное решение, которое в конечном итоге будет заменено коммерческим продуктом, но сейчас оно нам нужно для отслеживания. Это действительно просто знать клиента, контактный адрес электронной почты, сколько систем, срок действия, авторизованные функции и т. Д. c. Это для неформальной отчетности.
Если это RDB, уникальным идентификатором лицензии будут адреса MA C. Тем не менее, может быть один или несколько из них. Лицензия может быть переиздана с большим или меньшим количеством адресов MA C, чем исходная лицензия. Предполагается, что один из адресов MA C будет одинаковым в случае повторного выпуска - фактически, это будет определение повторного выпуска.
Если реализовано как RDB, я бы создал таблицу «многие ко многим», которая соединяет каждую MA C с идентификатором таблицы лицензий, которая содержит другие поля в лицензии, такие как электронная почта, срок действия дата, разрешения и пр. c.
Таким образом, всего будет три таблицы:
Таблица 1 - mac_addresses
id
ma c адрес (уникальный)
Таблица 2 license_info
имя
электронная почта
имя_компании
company_id
num_systems
дата истечения срока действия
function_a (y / n)
function-b (y / n) ... et c.
Таблица 3 - mac_to_licenses
mac_id
license_id
Другим вариантом будет использование базы данных No SQL, такой как MongoDB. Я думаю, что это может быть проще и проще - просто скопируйте лицензии (XML файлы) в базу данных и используйте запрос Mon go для поиска данных. По крайней мере, для начала.
Какой вариант звучит более разумно? Я склоняюсь к тому, чтобы попробовать MongoDB, хотя я открыт для любых предложений.