Я покрываю большую часть своего кода, который является бизнес-логикой в хранимых процедурах.У меня есть одна основная база данных и отдельная база данных для каждого клиента.
Каждая база данных клиента содержит хранимые процедуры, которые необходимы для выполнения действий, относящихся к этой базе данных.
Теперь при таком подходе это очень сложносоздать базу данных для каждого нового клиента, кроме таблиц, для хранимой процедуры 50-60, которая реплицируется.С другой стороны, удобство обслуживания также требует много изменений, поскольку каждое изменение, которое я должен реплицировать на каждую базу данных SP.
Итак, я думаю сохранить эти хранимые процедуры в базе данных Master и вызвать их оттуда, как показано ниже:
SET @q = CONCAT('insert into ', _db,'.dbmaster (organizationid) values (',_org,');');
PREPARE stmt FROM @q;
EXECUTE stmt;
DEALLOCATE PREPARE stmt;
Но в этом подходе я должен обернуть каждый запрос, как этот, который опять-таки не в хорошее решение.
Так что я хочу сказать, как можно использовать имя переменной _db в качестве префикса в качестве имени базы данныхкак показано ниже:
insert into _db.dbmaster (organizationid) values (_org);
Пожалуйста, дайте мне знать, если есть какое-либо решение.