Ho una struttura a tre tabelle: tournament
, group
e team
. Le tabelle tournament
e group
avere un rapporto uno-a-molti e group
e team
avere un rapporto uno-a-molti come mostrato di seguito.Come replicare la chiave esterna di un'altra tabella in relazione uno a molti
Come si replica il valore del tournament_id
da group
tabella nella group_tournament_id
di team
tavolo?
sto cercando una risposta che raggiungere questo obiettivo utilizzando l'istruzione CREATE come
create table team (
id serial primary key,
group_id int references group,
group_tournament_id int references group(tournament_id)
);
naturalmente questo non avrebbe funzionato perché per fare riferimento a qualcosa che deve essere unico, in questo caso è tournament_id non unico
ho bisogno di un modo standard per copiare il valore di tournament_id
da group
nella 'squadra' il tavolo di group_tournament_id
quando mai inserisco group_id inside
squadra table
modifica: non è più necessaria la risposta in symfony, solo postgreSQL andrebbe bene
Ecco come relazionare le entità: http: //doctrine-orm.readthedocs.org/projects/doctrine-orm/en/latest/reference/association-mapping.html e qui symfony docs sulla mappatura: http: //symfony.com/doc/current/book/doctrine.html#add-mapping-information – fito
Penso che sarebbe d'aiuto se la tua domanda fosse un po 'più specifica in quello che stai cercando di fare e contenesse del codice che potresti avere provato. –
Normalmente, la tabella 'team' dovrebbe avere solo' group_id' e dovrebbe ** not ** avere 'tournament_id' affatto. Non capisco perché tu de-normalizzi il tuo schema. –