update punta ad uno specifico record. Non puo' andare a pescare dei record di riferimento nella sua stessa tabella.
Poi occhio che la data piu' vecchia e' la piu' piccola min e non max che e' la piu' recente
Puoi fare semplicemente:
UPDATE aggiunti
SET prenotato = "1"
WHERE libro = 8094
order by data asc
limit 1
ma anche cosi' sarai poi impreciso perche' al prossimo aggiornamento di quel libro che farai?
where libro = 8094 and prenotato < 1