Odpowiedzi:
Jeśli chodzi o nazwy tabel, wielkość liter itp., Dominującą konwencją jest:
UPPER CASE
lower_case_with_underscores
UPDATE my_table SET name = 5;
To nie jest wyryte w kamieniu, ale nieco o identyfikatorach w dolnej przypadku jest wysoce zalecane, IMO. Postgresql traktuje wielkość liter w identyfikatorze w sposób niewrażliwy, gdy nie jest cytowany (faktycznie składa je do małych liter wewnętrznie) i rozróżnia wielkość liter w przypadku cytowania; wiele osób nie zdaje sobie sprawy z tej osobliwości. Używanie zawsze małych liter jest bezpieczne. W każdym razie dopuszczalne jest użycie camelCase
lub PascalCase
(lub UPPER_CASE
), o ile jesteś konsekwentny: albo podawaj identyfikatory zawsze, albo nigdy (i obejmuje to tworzenie schematu!).
Nie znam wielu innych konwencji ani przewodników po stylu. Klucze zastępcze są zwykle tworzone z sekwencji (zwykle z serial
makrem), wygodnie byłoby trzymać się tego nazewnictwa dla tych sekwencji, jeśli utworzysz je ręcznie ( tablename_colname_seq
).
Zobacz także niektóre dyskusje tutaj , tutaj i (dla ogólnego SQL) tutaj , wszystkie z kilkoma powiązanymi linkami.
Uwaga: Postgresql 10 wprowadził identity
kolumny jako zamiennik szeregowy zgodny z SQL .
Tak naprawdę nie ma formalnej instrukcji, ponieważ nie ma jednego stylu ani standardu.
Tak długo, jak rozumiesz zasady nazewnictwa identyfikatorów , możesz używać tego, co chcesz.
W praktyce uważam, że jest łatwiejszy w użyciu, lower_case_underscore_separated_identifiers
ponieważ nie jest "Double Quote"
im potrzebne wszędzie, aby zachować obudowę, spacje itp.
Jeśli chcesz nazwać swoje tabele i funkcje "@MyAṕṕ! ""betty"" Shard$42"
, możesz to zrobić, choć pisanie wszędzie byłoby trudne.
Najważniejsze rzeczy do zrozumienia to:
Chyba cytowany dwukrotnie, identyfikatory są case-składane do małych liter, tak MyTable
, MYTABLE
i mytable
to wszystko to samo, ale "MYTABLE"
i "MyTable"
są różne;
Chyba że podwójnie cytowany:
Identyfikatory SQL i słowa kluczowe muszą zaczynać się od litery (az, ale także litery ze znakami diakrytycznymi i literami niełacińskimi) lub podkreślenia (_). Kolejnymi znakami w identyfikatorze lub słowie kluczowym mogą być litery, znaki podkreślenia, cyfry (0–9) lub znaki dolara ($).
Musisz podwójnie podać słowa kluczowe, jeśli chcesz ich użyć jako identyfikatorów.
W praktyce zdecydowanie zalecamy, aby nie używać słów kluczowych jako identyfikatorów. Przynajmniej unikaj słów zastrzeżonych. To, że możesz nazwać tabelę "with"
, nie oznacza, że powinieneś.
lower_case_underscore_separated_identifiers
” ... ostatnio słyszałem, że jest to opisywane jako „przypadek węża”