| Autor |
Mensagem |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 09/08/2004 16:14:52
|
marcos.ribeiro
JavaChild
Membro desde: 23/12/2002 12:18:31
Mensagens: 146
Offline
|
Boa tarde
gostaria de saber se existe uma nomenclatura padrão para tabelas e campos no Banco de Dados?
não irei trabalhar com View, Roles e etc.. são apenas tabelas e seus respectivos campos. Existe alguma nomenclatura padrão, como o Java possui?
Obrigado
|
|
|
 |
|
|
![[Post New]](/templates/default/images/icon_minipost_new.gif) 09/08/2004 23:19:39
|
vamorim
JavaEvangelist
![[Avatar]](/images/avatar/bd5af7cd922fd2603be4ee3dc43b0b77.jpg)
Membro desde: 21/11/2003 17:08:39
Mensagens: 481
Localização: Rio de Janeiro - RJ
Offline
|
Uma padrãozona para todo mundo usar eu nunca ouvi falar.
As empresas e programadores de qualidade constumam definir seus próprios padrões.
Eu costumo seguir quatro regras simples:
Todas as palavras em minúscula, possivelmente separados por anderscor.
Todas as palavras em português, ou todas em inglês. Dependendo de quem vai dar manuentenção.
E nada de siglas!
Evidar números nos nomes
Pra mim, não tem nada pior que "tbClient_fornecedor2".
|
Vinci Pegoretti Amorim
http://vinci.blog.br |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 09/08/2004 23:51:48
|
Vegetto
GUJ Ranger
Membro desde: 22/06/2003 15:39:49
Mensagens: 797
Localização: Campinas
Offline
|
vamorim wrote:
Pra mim, não tem nada pior que "tbClient_fornecedor2". 
Não?
E isso aqui: TBL_001_003_OS
?
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 10/08/2004 09:29:37
|
dsiviotti
Virtual Machine Man
![[Avatar]](/images/avatar/b3f61131b6eceeb2b14835fa648a48ff.jpg)
Membro desde: 19/01/2004 01:35:23
Mensagens: 541
Localização: Rio de Janeiro
Offline
|
vamorim wrote:Uma padrãozona para todo mundo usar eu nunca ouvi falar.
As empresas e programadores de qualidade constumam definir seus próprios padrões.
Eu costumo seguir quatro regras simples:
 Todas as palavras em minúscula, possivelmente separados por anderscor.
 Todas as palavras em português, ou todas em inglês. Dependendo de quem vai dar manuentenção.
 E nada de siglas!
 Evidar números nos nomes
Pra mim, não tem nada pior que "tbClient_fornecedor2". 
Concordo com a lista acima e ainda saliento mais um item:
Para uma entidade/tabela chamada CLIENTE, por exemplo, a chave primária (simples) deve se charar ID_CLIENTE. Da mesma forma este campo em outras tabelas como chave estrangeira tem o mesmo nome. Isso padroniza as chaves primárias e facilita visualizar os relacionamentos entre tabelas.
|
Douglas Siviotti |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 10/08/2004 10:21:09
|
pcalcado
Moderador
![[Avatar]](/images/avatar/110eec23201d80e40d0c4a48954e2ff5.jpg)
Membro desde: 08/03/2004 17:19:35
Mensagens: 5174
Localização: Sydney - Australia
Offline
|
Vegetto wrote:
vamorim wrote:
Pra mim, não tem nada pior que "tbClient_fornecedor2". 
Não?
E isso aqui: TBL_001_003_OS
? 
Isso é ADABAS+NATURAL, não é?
[]s
|
Phillip Calçado "Shoes"
http://fragmental.tw/
http://blog.fragmental.com.br/
"It is unfortunate that much of what is called 'object-oriented programming today is simply old style programming with fancier constructs." - Alan Kay |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 10/08/2004 10:48:29
|
fabio.patricio
GUJ Master
Membro desde: 04/01/2004 02:51:33
Mensagens: 1512
Localização: Porto Alegre - RS
Offline
|
Olá,
Eu gosto de manter algumas convenções que com o tempo fui vendo em alguns sistemas, juntei o que tinha de melhor
Table => TB_<NOME_TABELA>
View => VW_<NOME_VIEW>
Colunas de PK => ID_<NOME_COLUNA>
Chaves Primarias => <NOME_ABREVIADO>_PK
Chaves Unicas => <NOME_ABREVIADO>_UK
Chaves Estrangeiras => <NOME_ABREVIADO_TABELA_PAI>_<NOME_ABREVIADO_TABELA_FILHA>_FK
OBS.: Como o dsiviotti já alertou use o mesmo nome de coluna tanto na tabela pai como na filha em uma FK. O sistema que eu trabalho hoje não tem esse padrão e é uma droga de verificar os relacionamentos, pq até os scripts vão por agua a baixo.
Extenções de Arquivos.
Packages:
Header => <NOME_PACKAGE>_PCK.PKS
Body => <NOME_PACKAGE>_PCK.PKB
Procedures => <NOME_PROCEDURE>.PRC
Functions => <NOME_FUNCTION>.FNC
Uso mais alguns para o restanto dos objetos, mas esses ai são os principais e mais usados no dia a dia.
]['s
|
Fabio Patricio
http://blog.wansoft.com.br
 |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 10/08/2004 13:18:46
|
boaglio
Moderador
![[Avatar]](/images/avatar/c0c7c76d30bd3dcaefc96f40275bdc0a.png)
Membro desde: 09/09/2002 21:23:39
Mensagens: 1865
Localização: Sampa City
Offline
|
Além das dicas já dadas ae, é um bom hábito colocar 2 letras
no nome da coluna para falar o seu datatype.
Exemplo:
ao invés de :
clientes.nome
clientes.data_admissao
clientes.salario
assim:
clientes.stnome
clientes.dtadmissao
clientes.nmsalario
Já vi empresas adotarem um padrão para
nome único de coluna para a base inteira.
Algo assim:
clientes.cli_nome
clientes.cli_admissao
clientes.cli_salario
|
Tem dúvidas de Java? Poste no fórum! Não respondo dúvidas de Java via MP! |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 10/08/2004 13:50:56
|
pcalcado
Moderador
![[Avatar]](/images/avatar/110eec23201d80e40d0c4a48954e2ff5.jpg)
Membro desde: 08/03/2004 17:19:35
Mensagens: 5174
Localização: Sydney - Australia
Offline
|
boaglio wrote:Além das dicas já dadas ae, é um bom hábito colocar 2 letras
no nome da coluna para falar o seu datatype.
Eu pessoalmente acho isso uma péssima idéia. Se a coluna mudar de tipo de dado, você fica com o nome defasado, fora outros milhares de problemas
[]s
|
Phillip Calçado "Shoes"
http://fragmental.tw/
http://blog.fragmental.com.br/
"It is unfortunate that much of what is called 'object-oriented programming today is simply old style programming with fancier constructs." - Alan Kay |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 10/08/2004 13:55:31
|
fabio.patricio
GUJ Master
Membro desde: 04/01/2004 02:51:33
Mensagens: 1512
Localização: Porto Alegre - RS
Offline
|
boaglio wrote:Além das dicas já dadas ae, é um bom hábito colocar 2 letras
no nome da coluna para falar o seu datatype.
Exemplo:
ao invés de :
clientes.nome
clientes.data_admissao
clientes.salario
assim:
clientes.stnome
clientes.dtadmissao
clientes.nmsalario
Já vi empresas adotarem um padrão para
nome único de coluna para a base inteira.
Algo assim:
clientes.cli_nome
clientes.cli_admissao
clientes.cli_salario
Verdade, eu até não sitei isso pois muitas vezes cada empresa tem seu padrão, mas eu procuro sempre manter assim quando posso.
ID_ = Chave Primaria
NM_ = Nome
CD_ = Códigos
DT_ = Date
FL_ = Flag
DS_ = Descrições
NU_ = Números
Vl_ = Valores
PC_ = Porcentagens
Acho que é isso.
]['s
|
Fabio Patricio
http://blog.wansoft.com.br
 |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 10/08/2004 19:54:46
|
Grinvon
GUJ Master
![[Avatar]](/images/avatar/aff0a6a4521232970b2c1cf539ad0a19.png)
Membro desde: 18/08/2003 22:10:49
Mensagens: 1899
Localização: Em qualquer lugar
Offline
|
Isso depende muito de projeto. Como estou em um novo projeto, então tivemos que usar a nomeclatura desejada pela Brasil Telecon já que ela é uma de nossas clientes.
|
>> Inocêncio. |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 10/08/2004 20:59:23
|
dsiviotti
Virtual Machine Man
![[Avatar]](/images/avatar/b3f61131b6eceeb2b14835fa648a48ff.jpg)
Membro desde: 19/01/2004 01:35:23
Mensagens: 541
Localização: Rio de Janeiro
Offline
|
pcalcado wrote:
boaglio wrote:Além das dicas já dadas ae, é um bom hábito colocar 2 letras
no nome da coluna para falar o seu datatype.
Eu pessoalmente acho isso uma péssima idéia. Se a coluna mudar de tipo de dado, você fica com o nome defasado, fora outros milhares de problemas
[]s
Concordo totalmente. Ainda tem o problema de tipos de dados semelhantes com nomes diferentes de banco para banco. O campo pode ser float, numeric, decimal etc. Nesse caso será um problema. Além do mais, incomoda bastante a leitura, os nomes dos campos ficam enormes. Isso é uma espécie de notação húngara para SQL.
O que às vezes aceito é colocar algo como dt antes de data, mas não é por causa do tipo do campo mas sim por usar dt como abreviação para a palavra Data, assim como Id para Identification ou Identificação. O tipo do campo deve constar da documentação e não no nome do campo.
|
Douglas Siviotti |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 10/08/2004 22:25:22
|
fabio.patricio
GUJ Master
Membro desde: 04/01/2004 02:51:33
Mensagens: 1512
Localização: Porto Alegre - RS
Offline
|
dsiviotti wrote:
pcalcado wrote:
boaglio wrote:Além das dicas já dadas ae, é um bom hábito colocar 2 letras
no nome da coluna para falar o seu datatype.
Eu pessoalmente acho isso uma péssima idéia. Se a coluna mudar de tipo de dado, você fica com o nome defasado, fora outros milhares de problemas
[]s
Concordo totalmente. Ainda tem o problema de tipos de dados semelhantes com nomes diferentes de banco para banco. O campo pode ser float, numeric, decimal etc. Nesse caso será um problema. Além do mais, incomoda bastante a leitura, os nomes dos campos ficam enormes. Isso é uma espécie de notação húngara para SQL.
O que às vezes aceito é colocar algo como dt antes de data, mas não é por causa do tipo do campo mas sim por usar dt como abreviação para a palavra Data, assim como Id para Identification ou Identificação. O tipo do campo deve constar da documentação e não no nome do campo.
Relamente eu também concordo, prefiro ter uma abreviação explicando a informação que a coluna contém e não o tipo de dado dela.
]['s
|
Fabio Patricio
http://blog.wansoft.com.br
 |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 11/08/2004 01:30:11
|
Filipe Sabella
GUJ Expert
Membro desde: 12/03/2003 11:25:57
Mensagens: 4680
Offline
|
Prefiro me ater ao simples.
Pessoas
Pessoa_Documentos
Pessoa_Compras
Compras
Compra_Regioes
Compra_FormasPagamento
Sem preposições, obviamente sem acentos e outros caracteres 'especiais', abreviações só quando passa dos 25 caracteres, e, como já disseram, manter uma língua só para tudo. Eu prefiro inglês, já que todo o resto é em inglês, mas isso é bem pessoal.
|
Former LIPE. |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 01/09/2009 00:20:42
|
ziplove
Thread.start()
![[Avatar]](/images/avatar/977f8b33d303564416bf9f4ab1c39720.jpg)
Membro desde: 13/07/2006 00:06:54
Mensagens: 34
Offline
|
Já ouviram falar em PascalCase e camellCase???? Usar TB_ ou colocar o tipo concatenado com o nome na coluna somente pra quem desenvolve com bloco de notas ou vim...hehehe....
Ex: Tabela
[NomeTabelaPlural] => Usuarios
Ex.: Chave Primária
id (se tem um campo chamado id é óbvio que este vai ser a chave primária)
Ex.: Chave estrangeira
[nomeTabelaSingularId] => usuarioID
Abraços
This message was edited 1 time. Last update was at 01/09/2009 00:23:27
|
"The sun only shines after a cup of coffee!!!" (ZipLove)
Tradução: "O Sol só brilha depois de uma xícara de café!!! |
|
|
 |
|
|