Eu já vi várias regras para nomear procedimentos armazenados.
Algumas pessoas prefixam o nome do sproc com usp_, outras com uma abreviação para o nome do aplicativo e outras com o nome do proprietário. Você não deve usar sp_ no SQL Server, a menos que realmente esteja falando sério.
Alguns iniciam o nome do processo com um verbo (obter, adicionar, salvar, remover). Outros enfatizam o nome da entidade.
Em um banco de dados com centenas de sprocs, pode ser muito difícil rolar e encontrar um sproc adequado quando você acha que ele já existe. As convenções de nomenclatura podem facilitar a localização de um sproc.
Você usa uma convenção de nomenclatura? Descreva-o e explique por que você o prefere a outras opções.
Resumo das respostas:
- Todo mundo parece defender a consistência da nomeação, para que possa ser mais importante que todos usem a mesma convenção de nomeação do que qual é usada em particular.
- Prefixos: Embora muitas pessoas usem usp_ ou algo semelhante (mas raramente sp_), muitas outras usam o banco de dados ou o nome do aplicativo. Um DBA inteligente usa gen, rpt e tsk para distinguir sprocs CRUD gerais daqueles usados para relatórios ou tarefas.
- Verbo + Substantivo parece ser um pouco mais popular que Substantivo + Verbo. Algumas pessoas usam as palavras-chave SQL (Selecionar, Inserir, Atualizar, Excluir) para os verbos, enquanto outras usam verbos não-SQL (ou abreviações para eles) como Obter e Adicionar. Alguns distinguem entre substantivos singluar e plural para indicar se um ou mais registros estão sendo recuperados.
- Uma frase adicional é sugerida no final, quando apropriado. GetCustomerById, GetCustomerBySaleDate.
- Algumas pessoas usam sublinhados entre os segmentos de nome e outras evitam sublinhados. app_ Get_Customer vs. appGetCustomer - acho que é uma questão de legibilidade.
- Grandes coleções de sprocs podem ser segregadas em pacotes Oracle ou soluções e projetos do Management Studio (SQL Server) ou esquemas do SQL Server.
- Abreviações inescrutáveis devem ser evitadas.
Por que escolhi a resposta que fiz: Existem TANTAS boas respostas. Obrigado a todos! Como você pode ver, seria muito difícil escolher apenas um. O que eu escolhi ressoou comigo. Eu segui o mesmo caminho que ele descreve - tentando usar Verbo + Substantivo e, em seguida, não conseguindo encontrar todos os sprocs que se aplicam ao Cliente.
Ser capaz de localizar um sproc existente ou determinar se ele existe, é muito importante. Problemas graves podem surgir se alguém inadvertidamente criar um sproc duplicado com outro nome.
Como geralmente trabalho em aplicativos muito grandes com centenas de sprocs, tenho preferência pelo método de nomeação mais fácil de encontrar. Para um aplicativo menor, eu poderia defender Verbo + Substantivo, pois segue a convenção geral de codificação para nomes de métodos.
Ele também defende a prefixação com o nome do aplicativo em vez do usp_ não muito útil. Como várias pessoas apontaram, às vezes o banco de dados contém sprocs para vários aplicativos. Portanto, prefixar o nome do aplicativo ajuda a segregar os sprocs E ajuda os DBAs e outros a determinar para qual aplicativo o sproc é usado.