D'après ce que je peux voir dans l'exemple, vous n'avez rien inséré dans le tableau des projets dans lequel effectuer une mise à jour ou une suppression en cascade.
Je suggérerais comme meilleur exemple pour démontrer le comportement que vous recherchez que vous effectuiez ce qui suit, après avoir suivi les étapes ci-dessus :
insert into projects values (1,1);
select * from projects;
update location set id = 2 where id = 1;
select * from projects;
Ce que vous devriez finir par voir, c'est qu'initialement le location_id dans la ligne des projets insérés sera égal à 1, puis après la mise à jour de l'emplacement, le location_id dans les projets devrait passer à 2. Cela démontre que le changement de l'id de l'emplacement table a mis à jour en cascade le champ location_id de la ligne dans la table des projets.