Você está atualizando cada linha na tabela company_name/emp.
Você pode corrigir isso com uma subconsulta correlacionada para garantir que a linha exista, ou de forma mais eficiente, colocando uma chave primária ou exclusiva em bday.empid e consultando:
update (
select c.dob to_dob,
d.dob from_dob
from company_emp c join dob d on (c.empid = d.empid)
where d.dob = date '2011-05-01')
set to_dob = from_dob
Sintaxe não testada.