Добрый день, хочу спросить у более опытных людей совета. Есть куча баз данных, во всех лежат одни и те же таблицы с разной информацией. В одной из таких таблиц лежит информация о пользователях. У меня есть номер телефона и мне надо быстро определить в какой базе и в какой таблице он находится. Как это можно реализовать ? Буду благодарен всем советам, идеям :)
Буду писать на python.
Пока в мыслях только создать цикл for в котором перебираются название баз данных и идет поиска по таблице
SELECT *, 'db1' AS dbasename
FROM db1.tablename
WHERE phone = '123-45-67'
UNION ALL
SELECT *, 'db2'
FROM db2.tablename
WHERE phone = '123-45-67'
UNION ALL
...
Если список баз не фиксирован и должен формироваться в рантайме - то хранимая процедура с запросом по INFORMATION_SCHEMA.TABLES и динамическим SQL.
либо цикл for в котором перебираются название баз данных и идет поиска по таблице
либо навести один раз порядок в этом бардаке
например, если это multi-tenant приложение, то запрашивать не только логин и пароль, но и приложение, например в виде субдомена.
при текущей структуре ничто не мешает появлению одного и того же пользователя в разных базах
Структура:
Базы:
фитнес клуб Название1 В ней таблица user, в ней номера телефонов
фитнес клуб Название2 В ней таблица user, в ней номера телефонов
фитнес клуб Название3 В ней таблица user в ней номера телефонов