Datasport1 ha scritto:
Allora il Database serve x registrare i dati degli atleti ed é compisto da una tabella atleti formata da idatleti nome cognome data di nascita ed una tabella eventi formata da idevento data atleta evento risultato.
Esatto. La tabella Atleti avrà il campo IDAtleta (chiave primaria, PK). La tabella Eventi avrtà IDEvento (chiave primaria, PK) e IDAtleta (chiave esterna, FK). Quindi hai la relazione Atleti.IDAtleta uno-a-molti Eventi.IDAtleta.
In tabella Eventi ci vedrei una casella combinata sul campo (che chiamerei più preferibilmente) TipoEvento dove scegliere Gara o Esame...con impostazione "Solo in elenco": Sì. Sul campo Risultato puoi mettere una casella combinata che abbia sì i valori "superato" e "non superato", ma con la proprietà "Solo in elenco" impostata a No, così puoi scrivere un valore testuale libero nel caso di scelta Gara in TipoEvento.
Riguardo il vincolo if che stavi cercando...forse ti serve un meccanismo tipo "caselle combinate a cascata" (ci sono molte discussioni che ne parlano)(da applicare obbligatoriamente in maschera), ma onestamente, per il ristretto problema che poni, non mi sembra ne valga la pena.