@butingeorgiy
Web-программист

Получить название таблицы MySql?

В базе данных интернет магазина есть четыре сущности (обычный пользователь, администратор, поставщик и курьер). У всех у них разные свойства, поэтому было решено для каждого типа юзера создать свою таблицу в базе.

При вводе логина и пароля юзер ищется во всех четырех таблицах. И теперь мне необходимо понимать в какой конкретно таблицы был найден юзер. Чтобы показать ему определенную страницу.

Четыре разные формы входа на сайте сделать нельзя по ТЗ (прихоть клиента)! Можно конечно в каждой таблице юзеров добавить столбец (например privileges) который будет принимать значение 1, 2, 3 или 4 в зависимости от типа юзера (обычный пользователь, администратор, поставщик и курьер). И так я могу определить какой тип юзера хочет зайти на сайт. Но может быть есть другой способ просто определить название таблицы в которой была найдена строка, если запрос был по нескольким таблица одновременно? (так сказать более элегантный способ)
  • Вопрос задан
  • 382 просмотра
Решения вопроса 1
serginhold
@serginhold
оно же не само магически ищется..
у тебя или 4 запроса к разным таблицам, тут вообще все понятно;
или как бы один запрос с union, где можно в каждый select в ручную добавить название таблицы
Ответ написан
Пригласить эксперта
Ответы на вопрос 2
glaphire
@glaphire Куратор тега PHP
PHP developer
Делить юзеров на 4 таблицы это неправильно (и с точки зрения проектирования базы, и с точки зрения поддержки). Основные свойства юзеров можно хранить в одной таблице, а дополнительные свойства - в другой, с привязкой по юзер айди к первой.
Ответ написан
Комментировать
Alexandre888
@Alexandre888
Javascript-разработчик
Комментировать
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы
19 апр. 2024, в 14:10
500 руб./за проект
19 апр. 2024, в 13:31
10000 руб./за проект