wolf47
@wolf47
Айтишник, немного програмирую на JS

Как сохранить целостность данных?

На ферме животные с ушной биркой. Это уникальный номер животного, он не должен повторяться. Но нужно добавить новую ферму, у которых номер ушной бирки также начинается с единицы (1). Как уникальными номер бирки в рамках одной фермы, но повторяющиеся на стороне базы данных? Может сделать составные ID? И при вводе номера бирки делать проверку на стороне клиента? Если, так, то как создать связи с справочниками?
пример связанной таблицы
6295995519b41557344889.png

Номер бирки коровы повторяется. Может быть нужно добавить еще один столбец с названием фермы?
  • Вопрос задан
  • 78 просмотров
Решения вопроса 1
@nApoBo3
1. Используйте для уникального идентификатора и связей суррогатные ключи. Это спасет вас от множества проблем несовершенности реального мира.
2. У каждого животного делайте номер бирки и id фермы, из двух этих полей сделайте составной уникальный ключ.
3. Сделайте таблицу ферм, id фермы + доп.поля, название, адрес, координаты и т.д.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
Rsa97
@Rsa97
Для правильного вопроса надо знать половину ответа
Может быть нужно добавить еще один столбец с названием фермы ?
Именно. Только не с названием, а с идентификатором. И сделать составной первичный ключ (id_фермы, id_бирки).
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы