En smertefri mulighed ville være at oprette en forespørgsel, som genererer UPDATE
sætninger du vil køre på alle tabellerne:
SELECT CONCAT('UPDATE ', a.table_name, ' SET date = "2016-04-20" WHERE name = "Example";')
FROM information_schema.tables a
WHERE a.table_schema = 'YourDBNameHere'
Du kan kopiere outputtet fra denne forespørgsel, indsætte det i forespørgselseditoren og køre det.
Opdatering:
Som @PaulSpiegel påpegede, kan ovenstående løsning være ubelejlig, hvis man bruger en editor som HeidiSQL, fordi det ville kræve manuelt at kopiere hver post i resultatsættet. Brug af et trick ved hjælp af GROUP_CONCAT()
ville give en enkelt streng indeholdende hver ønsket UPDATE
forespørgsel i det:
SELECT GROUP_CONCAT(t.query SEPARATOR '; ')
FROM
(
SELECT CONCAT('UPDATE ', a.table_name,
' SET date = "2016-04-20" WHERE name = "Example";') AS query,
'1' AS id
FROM information_schema.tables a
WHERE a.table_schema = 'YourDBNameHere'
) t
GROUP BY t.id