Вот часть необходимого вам кода:
В вашей попытке вы делаете SELECT table_name ...
.Вместо table_name
создайте запрос, который вам нужно выполнить.Сделайте это с грязной CONCAT(...)
(которую я предоставлю ниже).
SELECT CONCAT("select 'table_name', nummer = param_nummer FROM table_name")
from information_schema.columns
where column_name = 'nummer'
Перед следующим шагом, посмотрите на результат выбора.Это должно быть несколько строк, таких как
select 'some_table', nummer = 123 FROM some_table
select 'another_table', nummer = 123 FROM another_table
Тогда вам нужно prepare
и execute
для каждой найденной строки.Это даст вам
some_table 1
another_table 0
Где 1 означает истину, а 0 - ложь.
ОК, теперь я исправлю CONCAT, чтобы он заработал.Имейте в виду, что sql имеет no способ "интерполировать", как и многие другие языки.То есть нам нужно полностью зависеть от CONCAT
.
SELECT CONCAT("select 'table_name', nummer = param_nummer FROM table_name")
->
SELECT CONCAT("select '", table_name, "', nummer = ", param_nummer, " FROM ", table_name)