Цикл по базам данных с именами, хранящимися в основной базе данных - PullRequest
0 голосов
/ 14 января 2019

Итак, у меня есть основная база данных, где хранятся имена других баз данных. Мне нужно зациклить таблицы всех баз данных, которые хранятся в основной базе данных, в каком-то виде соединения. Мне нужен массив всех строк в базах данных станции, который имеет status != 2 с использованием PHP и MySQLi.

Основной выглядит так:

main.stations

+----+-----------------+------+
| ID |  station name   |  db  |
+----+-----------------+------+
|  1 | Name of station | db_1 |
|  2 | Name again      | db_2 |
|  3 | Name            | db_3 |
+----+-----------------+------+

Все три станции имеют назначенную базу данных с именем, указанным в столбце main.stations.db

В базе данных станции есть две таблицы, которые мне нужны для циклического прогиба и получения всех строк, где status != 2. Две таблицы выглядят так (пример для db_1):

db_1.salesReport

+----+----------+--------+
| ID |   name   | status |
+----+----------+--------+
|  1 | Report 1 |      1 |
|  2 | Report 2 |      0 |
|  3 | Report 3 |      2 |
+----+----------+--------+

db_1.fuelReport

+----+----------+--------+
| ID |   name   | status |
+----+----------+--------+
|  1 | Report 1 |      1 |
|  2 | Report 2 |      0 |
|  3 | Report 3 |      2 |
+----+----------+--------+

Мой вопрос был; Есть ли способ перебрать базы данных на основе имен баз данных из другой базы данных? (Конечно, при условии, что пользователь имеет права доступа ко всем базам данных) Я не хочу добавлять еще один слой в моем массиве на основе станций. Я хочу, чтобы каждая строка из суб-базы данных была верхним элементом, включая всю информацию от станций, в моем массиве.

Редактировать Вывод должен выглядеть примерно так

0:{
stationID: 1
station name: Name of stations,
fromDb: salesReport //this doesn't have to be dynamically stated
name: Report 1,
status: 1
},
1:{
stationID: 1
station name: Name of stations,
fromDb: fuelReport
name: Report 1,
status: 1
},
2:{
stationID: 1
station name: Name of stations,
fromDb: salesReport
name: Report 2,
status: 0
},
3:{
stationID: 2
station name: Name again,
fromDb: salesReport
name: Report 2,
status: 0
},

и т. Д.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...