Een eenvoudige optie zou zijn om een query te maken die de UPDATE
. genereert uitspraken die u op alle tabellen wilt uitvoeren:
SELECT CONCAT('UPDATE ', a.table_name, ' SET date = "2016-04-20" WHERE name = "Example";')
FROM information_schema.tables a
WHERE a.table_schema = 'YourDBNameHere'
U kunt de uitvoer van deze query kopiëren, in de query-editor plakken en uitvoeren.
Bijwerken:
Zoals @PaulSpiegel opmerkte, kan de bovenstaande oplossing onhandig zijn als men een editor zoals HeidiSQL gebruikt, omdat het handmatig kopiëren van elk record in de resultatenset zou vereisen. Een truc toepassen met GROUP_CONCAT()
zou een enkele string geven met elke gewenste UPDATE
vraag erin:
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