Non riesco a capire che differenza ci sia tra seconda e terza forma normale:

So che è 2nf quando ogni attributo non primo dipende funzionalmente in modo completo dalla chiave mentre è in 3nf quando x è una chiave o y è primo..

se x->y è funzionalmente completa significa che x deve essere per forza una chiave?

Che differenza c'è allora tra 2 e 3????