Pokud hledáte způsob, jak aktualizovat všech 70 sloupců na jedinou hodnotu pomocí krátkého jednoduchého příkazu, pak doporučuji napsat uloženou proceduru, která aktualizaci provede. Tímto způsobem stačí napsat úplnou syntaxi aktualizace pouze jednou a můžete ji znovu a znovu používat voláním uložené procedury.
CREATE PROCEDURE update_all_columns (p_new_value SMALLINT, p_id INT) ...
CALL update_all_columns(1,2);
Dalším trikem je použití tabulky information_schema.columns ke generování příkazu aktualizace, takže je méně únavné kódovat uloženou proceduru.
Něco takového:
SELECT concat('UPDATE ',
table_name,
' SET ',
group_concat(column_name separator ' = p_new_value, '),
' = p_new_value',
' WHERE id = p_id;') as sql_stmt
FROM information_schema.columns
WHERE table_schema = 'your_schema'
AND table_name = 'tablename'
AND column_name != 'id'