PostgreSQL
 sql >> Baza danych >  >> RDS >> PostgreSQL

Konwencje nazewnictwa PostgreSQL

Jeśli chodzi o nazwy tabel, wielkość liter itp., powszechną konwencją jest:

  • Słowa kluczowe SQL:UPPER CASE
  • identyfikatory (nazwy baz danych, tabele, kolumny itp.):lower_case_with_underscores

Na przykład:

UPDATE my_table SET name = 5;

To nie jest wyryte w kamieniu, ale fragment o identyfikatorach pisanych małymi literami jest wysoce zalecane, IMO. Postgresql traktuje identyfikatory bez rozróżniania wielkości liter, gdy nie są cytowane (wewnętrznie składa je na małe) i rozróżnia wielkość liter, gdy są cytowane; wiele osób nie zdaje sobie sprawy z tej dziwactwa. Używając zawsze małych liter, jesteś bezpieczny. W każdym razie dopuszczalne jest użycie camelCase lub PascalCase (lub UPPER_CASE ), o ile jesteś konsekwentny:albo zawsze cytuj identyfikatory, albo nigdy (dotyczy to również tworzenia schematu!).

Nie znam wielu innych konwencji czy przewodników po stylu. Klucze zastępcze są zwykle tworzone z sekwencji (zwykle z serial makro), wygodnie byłoby trzymać się tego nazewnictwa dla tych sekwencji, jeśli tworzysz je ręcznie (tablename_colname_seq ).

Zobacz także dyskusję tutaj, tutaj i (dla ogólnego SQL) tutaj, wszystkie z kilkoma powiązanymi linkami.

Uwaga:Postgresql 10 wprowadził identity kolumny jako zgodny z SQL zamiennik dla serial .



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Uzyskaj domyślną wartość szeregową po INSERT wewnątrz PL/pgSQL

  2. JOIN (WYBIERZ ... ) ue ON 1=1?

  3. Wygeneruj SQL, aby zaktualizować klucz podstawowy

  4. Ogólne rozwiązanie Ruby dla SQLite3 LIKE czy PostgreSQL ILIKE?

  5. Jak naprawić BŁĄD:kolumna c.relhasoids nie istnieje w Postgresie?