Hallo Marcus,
es ist "schöner", wenn du mit einem Surrogate Key (künstlicher Schlüssel,
GUID, AUTOINC, ...) arbeitest, aber auch mit einem Compound Key kann man leben. Tatsächlich müssen alle Felder des Primärschlüssels auch in der abhängigen Tabelle Entsprechungen finden. Das automatische Löschen der abhängigen Datensätze erreichst du am Besten über die DRI (Declarative Referential Integrity) Klausel ON UPDATE CASCADE.
Grüße vom marabu