zerkms-oplossing werkte niet voor mij. Ik moest het information_schema
. specificeren database om de Tables
. te kunnen doorzoeken tafel.
SELECT
CONCAT('RENAME TABLE ', GROUP_CONCAT('`', TABLE_SCHEMA, '`.`', TABLE_NAME, '` TO `', TABLE_SCHEMA, '`.`prefix_', TABLE_NAME, '`')) AS q
FROM
`information_schema`.`Tables` WHERE TABLE_SCHEMA='test';
Bewerken:
De query geoptimaliseerd om RENAME TABLE slechts één keer aan te roepen. Iets waar ik tegenaan liep, was het feit dat de aaneengeschakelde uitvoer werd afgekapt op 341 tekens. Dit kan worden opgelost (indien toegestaan door uw server) door de MySQL-variabele group_concat_max_len
in te stellen naar een hogere waarde:
SET group_concat_max_len = 3072; -- UTF8 assumes each character will take 3 bytes, so 3072/3 = 1024 characters.