Witam
Mam pytanie czy istnieją jakieś standardy odnoszące się do nazywania tabel przy tworzeniu bazy danych?
A może ktoś się podzieli własnym pomysłem, zastrzegam jestem totalnym amatorem. Programista niedzielny :)
Pytam z ciekawości, bo co tworzę jakąś bazę danych to zawsze wychodzi mi inna koncepcja nazewnictwa :)
nie ma nic takiego. Zaleca się unikania nazw gdzie miesza się np. polski z angielskim - baza się nie zepsuje no ale. Zalecane jest też trzymanie się przyjętej konwencji - jeśli mamy tabelę stany_magazynowe
to następnej nie nazywamy DokumentyZakupu
tylko dokumenty_zakupu
. Wysoce niezalecane jest używanie znaków narodowych, minusa oraz spacji w nazwach czegokolwiek. Nie należy nazywać obiektów słowami zastrzeżonymi. Także camel case jest niezalecane gdyż niektóre bazy danych zapisują nazwy albo jako małe litery albo jako duże litery i cały system bierze w łeb wtedy (chociaż dla MSSQLa zaleca się właśnie camel case zamiast podkreślenia).
Jeśli tworzysz sztuczne pole dla PK i w tabeli a nazywasz je np. dokument_id
to w innej nie nazywaj go id_kontrahenta
. Często nazwy tabeli to liczba mnoga a pole id to liczba pojedyncza + przedrostek/przyrostek id, np. tabela kontrahenci
i pole id kontrahent_id
.
Dla wygody nazwy pól, które są FK nazywa się tak samo jak pole do którego FK się odnosi. Nazwy indeksów dobrze jest tworzyć np. w ten sposób idx_
nazwa tabeli do której się odnosi_
nazwa pola na którym indeks jest zakładany
tu masz rozwinięcie po angielsku https://launchbylunch.com/posts/2014/Feb/16/sql-naming-conventions/
Przy tworzeniu baz danych, projektowaniu tabel ważne jest to, aby nie występowała redundancja. Musisz sobie poczytać o normalizacji tabel, postaciach normalnych itd. Tabelę nazywasz tak jak ci wygodniej ja zawsze dają nazwę adekwatną do tego co w niej przechowuje.