zerkms løsning virkede ikke for mig. Jeg var nødt til at angive information_schema
database for at kunne forespørge Tables
tabel.
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';
Rediger:
Optimerede forespørgslen til kun at kalde RENAME TABLE én gang. Noget, jeg gik ind i, var det faktum, at det sammenkædede output blev afkortet til 341 tegn. Dette kan løses (hvis det er tilladt af din server) ved at indstille MySQL-variablen group_concat_max_len
til en højere værdi:
SET group_concat_max_len = 3072; -- UTF8 assumes each character will take 3 bytes, so 3072/3 = 1024 characters.