एक दर्द रहित विकल्प एक क्वेरी बनाना होगा जो UPDATE
. उत्पन्न करता है वे स्टेटमेंट जिन्हें आप सभी टेबल पर चलाना चाहते हैं:
SELECT CONCAT('UPDATE ', a.table_name, ' SET date = "2016-04-20" WHERE name = "Example";')
FROM information_schema.tables a
WHERE a.table_schema = 'YourDBNameHere'
आप इस क्वेरी से आउटपुट को कॉपी कर सकते हैं, इसे क्वेरी एडिटर में पेस्ट कर सकते हैं और इसे चला सकते हैं।
अपडेट करें:
जैसा कि @PaulSpiegel ने बताया, उपरोक्त समाधान असुविधाजनक हो सकता है यदि कोई HeidiSQL जैसे संपादक का उपयोग कर रहा है, क्योंकि इसके लिए परिणाम सेट में प्रत्येक रिकॉर्ड को मैन्युअल रूप से कॉपी करना होगा। GROUP_CONCAT()
. का उपयोग करके कोई तरकीब अपनाना प्रत्येक वांछित UPDATE
युक्त एक एकल स्ट्रिंग देगा इसमें क्वेरी करें:
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