Nah, sepertinya bidang nama Anda tidak unik. Subquery Anda cocok dengan lebih dari satu baris, jadi Anda perlu menemukan id unik untuk dicocokkan selain nama, atau jika Anda hanya ingin mengambil hasil pertama dari subquery, lakukan ini:
UPDATE TABLE1 SET ID = (SELECT TABLE2.ID FROM TABLE2, TABLE1
WHERE TABLE1.NAME=TABLE2.NAME LIMIT 1) WHERE TABLE1.ID IS NULL