@AlexanderWalker

Как хранить телефоны в базе данных?

447c6f4bc4c9478e8918faac7d7dab36.PNG

Стоит вопрос как связать правильно таблицы эти три(на скрине) или как хранить по другому номера телефонов?
Компании и клиенты могут иметь неограниченное число номеров. Чтобы не создавать отдельные таблицы пришла такая идея, одна таблица в которой будет указываться тип номера в поле type (enum) и ID владельца ownerid ( компания или клиент) По логике понятно как выбирать данные и писать. А вот как правильно это связать/организовать со стороны БД?
_______________________
Как связать с таблицами Компании/Клиенты. Чтобы при удалении компании удалялись номера компании и с клиентами соответственно? Получается от одного поля ownerID будут идти две связи для двух таблиц?
  • Вопрос задан
  • 603 просмотра
Решения вопроса 1
@AlexanderWalker Автор вопроса
Решил таки образом: Две таблицы телефонов для компаний и клиентов отдельно
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 3
berezuev
@berezuev
#define TRUE FALSE
Начнем с того, что типичный российский номер (7 цифр + 3 цифры кода) у вас в обычный INT не влезет (т.е хотя бы bigint).
Лучше всего хранить 2 char поля: код и номер.
Ответ написан
severus256
@severus256
Code everywhere....
Такое связанное удаление можно организовать с помощью триггеров на DELETE
Ответ написан
Комментировать
foxmuldercp
@foxmuldercp
Системный администратор, программист, фотограф
Телефонные номера в int? да вы извращенец.
string же.
Ответ написан
Ваш ответ на вопрос

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

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