Le chiavi esterne in MYSQL si possono fare solo con determinati tipi di tabelle: ad esempio, se usi le tabelle MyISAM non puoi usare le chiavi esterne, per le quali puoi usare il formato di tabelle InnoDB

E con phpmyadmin le puoi impostare

Per quanto riguarda la struttura del DB credo posso andare bene, aggiungerei solo una colonna ID_pratica nella tabella pratiche, per avere un indice univoco per ogni pratica

In un giorno e mezzo tutto questo lavoro? Si fa si fa, è più difficile studiare il DB che preparare lo script in PHP

BUON LAVORO!