przy projektowaniu najlepiej się trzymać jednej konwencji
są rożne, i tak naprawdę nie ma większego znaczenia którą wybierzesz, poza pustym dyskursem...
wybierając jednak jedną metodę - trzeba się jej dość sztywno trzymać
ja np. wszystkie nazwy piszę z małych liter, camel_case
nazywanie indeksów tu też będziesz miał przynajmniej dwa wiodące nurty,
np tabela
'samochody' to indeks do niej można odpowiednio
z prefiksami:
id_samochod
id_samochody
pk_samochod
pk_samochodyto samo, tylko z sufiksami
samochod_id
samochody_id
samochod_pk
samochody_pklub tez bez prefiksów i sufiksów czyli
samochod lub samochody osobiście, ostatnio piszę
id_samochod niezaleznie czy to pk czy fk, dla mnie upraszcza zapytania, ale jest mniej czytelne być może.
o ile dla nazw tabel w większości stosowana jest liczba mnoga, tak już dla indeksu są liczne dyskusje, w liczbie mnogiej ma być czy też nie.
znam argumenty za i przeciw większością z tych konwencji.
jaką byś nie wybrał, trzymając się jej ściśle - sprawiasz ze pisanie zapytań staje się prostsze (wystarczy znać nazwę tabeli, a resztę sobie dośpiewasz)
ty tutaj - piszesz jak ci się uda...
np.:
Cytat
Kierowca_has_WYSCIG
Kierowca_Team_ID_team
Kierowca_ID_kierowca
WYSCIG_idWYSCIG
brak jakiejkolwiek konsekwencji jest widoczny z daleka...

nie wspominam już o tym ze złe relacje są tutaj zrobione.
ja osobiście tą tabelę zrobił w ten deseń
Cytat
kierowcy_has_wyscigi
id_kierowca
id_wyscig
dodawanie id_team jest w tej relacji bez sensu.
z tego co piszesz- to czeka Cie duuuzo pisania kodu, i warto jest ułatwić sobie pracę...
**
część z tego co napisałeś nie jest dostępne bezpośrednio w mysql, ale chyba wszystko da się rozpisać w zastępczy sposób