Code:
UPDATE table2
INNER JOIN table1
ON table2.art_nr = table1.art_nr
SET table2.cat1 = table1.cat1
, table2.cat2 = table1.cat2
, table2.cat3 = table1.cat3
;
Anmerkung: Hier wird (richtigerweise) ein der Verbung der beiden Tabellen gebildet (Join) und nicht das kartesische Produkt verwendet.
Auch werden die richtigen Spalten aus der richtigen Tabelle genommen. (Problem von käptn)
Beim zweiten Lösungsvorschlag wird die Tabelle table2 vorher gelöscht (bzw. muss gelöscht werden).
PS: "art.nr" ist IMHO kein gültiger Spartenname. -> Unterstrick!