Jednou bezbolestnou možností by bylo vytvořit dotaz, který generuje UPDATE
příkazy, které chcete spustit na všech tabulkách:
SELECT CONCAT('UPDATE ', a.table_name, ' SET date = "2016-04-20" WHERE name = "Example";')
FROM information_schema.tables a
WHERE a.table_schema = 'YourDBNameHere'
Výstup z tohoto dotazu můžete zkopírovat, vložit do editoru dotazů a spustit.
Aktualizace:
Jak zdůraznil @PaulSpiegel, výše uvedené řešení může být nepohodlné, pokud člověk používá editor, jako je HeidiSQL, protože by vyžadovalo ruční kopírování každého záznamu ve výsledné sadě. Použití triku pomocí GROUP_CONCAT()
by dal jeden řetězec obsahující všechny požadované UPDATE
dotaz v něm:
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