Я создал базу данных инвентаря, в которой номера ISBN являются первичными ключами для предметов. Какое-то время это прекрасно работало, так как предметами были книги. Теперь я хочу добавить не-книги. у некоторых некниг есть EAN или ISSN, у некоторых нет.
Это в PostgreSQL с приложениями django для внешнего интерфейса и JSON API, а также с несколькими вспомогательными инструментами командной строки python для управления. рассматриваемые предметы в основном представляют собой книги и репродукции художников, некоторые из которых изданы самостоятельно.
Что хорошо в использовании ISBN в качестве первичных ключей, так это то, что помимо реляционной целостности вы получаете множество удобных утилит для проверки ISBN, автоматического поиска отсутствующей или дополнительной информации об элементах книги и т. д., многими из которых я воспользовался. . некоторые такие инструменты уже готовы (PyISBN, PyAWS и т. д.), а некоторые создаются вручную — я старался, чтобы все эти части были красивыми и несвязанными, но вы знаете, как все может получиться.
Я не смог найти в Интернете ничего о «частных ISBN» или «самостоятельно присваиваемых ISBN», но мне было интересно этим заниматься. Сомневаюсь, что я остановлюсь на этом, так как уже есть очевидный пробег по номерам ISBN.
должен ли я перенастроить все для номеров EAN или вообще отказаться от ISBN в качестве первичных ключей? если у кого-то есть опыт работы с этими системами, буду рад услышать об этом, буду рад вашим советам.