Skip to content

Instantly share code, notes, and snippets.

@thiamsantos
Last active October 21, 2024 13:17
Show Gist options
  • Save thiamsantos/654ec002f04c86d53611923a8b4c3a65 to your computer and use it in GitHub Desktop.
Save thiamsantos/654ec002f04c86d53611923a8b4c3a65 to your computer and use it in GitHub Desktop.
Convenções de nomenclatura para banco de dados

Convenções de nomenclatura para banco de dados

Geral

Os nomes das tabelas e colunas devem estar minúsculas e as palavras devem ser separadas por underscore, seguindo o padrão snake case. E todos os termos devem estar em inglês, exceto alguns termos que não há tradução apropriada para o inglês. Sempre prefira nomes descritivos, evitando ao máximo contrações.

Tabelas

Os nomes das tabelas devem estar no plural.

Ex:

  • Bom: users, posts, roles, room_categories
  • Ruim: user, post, grupos, quarto_categoria

Colunas

Os nomes das colunas devem estar no singular.

Ex:

  • Bom: cpf, name, age
  • Ruim: endereco, posts, idade

Foreign keys

Todas as foreign keys devem seguir o padrão nome_da_tabela_no_singular_id.

Por exemplo, caso a tabela users tenha um relacionameto com a tabela roles, o nome da coluna foreign key da tabela users deve ser role_id.

Primary keys

A primary key de toda tabela deve ser uma coluna de inteiros com incremento automático, chamada id.

Timestamps

Toda tabela deve definir duas colunas para colocar os timestamps: created_at e updated_at. A coluna created_at recebe automaticamente o timestamp do momento que o registro for criado. A coluna updated_at recebe automaticamente o timestamp do momento que o registro for alterado.

Referências

@RenatoDaM
Copy link

obrigado, me ajudou.

@alexmota-dev
Copy link

E quanto ao nome do banco em si ? Não seria uma má praticar eu usar "_" ?
Qual seria o melhor nome:
firstapinest ou first_api_nest ? Eu queria usar camelcase mas o nome do banco fica com todas as letras minúsculas mesmo que eu use letras maiúsculas .

@RubenFontes
Copy link

maneiro

@RubenFontes
Copy link

E quanto ao nome do banco em si ? Não seria uma má praticar eu usar "_" ? Qual seria o melhor nome: firstapinest ou first_api_nest ? Eu queria usar camelcase mas o nome do banco fica com todas as letras minúsculas mesmo que eu use letras maiúsculas .

ambos são aceitáveis, mas a segunda opção, "first_api_nest," é geralmente mais legível e preferível

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment