Nomeação de procedimento armazenado do SQL Server

11

Começamos a nomear nossos procedimentos armazenados como [16_TestStoredProc]. Existem implicações para nomear um procedimento armazenado como este?

Não vou explicar por que estamos fazendo isso. Não é que eu tenha problemas com isso, mas teria implicações.

Joshua
fonte
11
Obrigado por testar para todos nós todas as ferramentas que ruptura com nomes não cotadas :)
Remus Rusanu
2
Agradecemos à comunidade por não responder a esta pergunta dizendo Não é uma pergunta real . Estou certo de que isso ajudará futuros leitores a entender as implicações do uso de diferentes convenções de nomenclatura.
Anuj Tripathi
5
Seria interessante saber por que você está fazendo isso.
Max Vernon
2
Eu recomendo nomear seus procedimentos armazenados usando um padrão "NounVerb". Exemplos são "EmployeeGetAll" e "EmployeeInsert". Isso mantém todos os procedimentos armazenados relacionados classificados em conjunto.
precisa saber é o seguinte
1
Isso não parece ser uma solução muito útil para seus programadores ou para manutenção a longo prazo. Geralmente eu uso um padrão VerbNoun - GetEmployee, por exemplo - que não mantém todos os procedimentos dos funcionários juntos como o NounVerb, mas é muito mais intuitivo.
precisa saber é o seguinte

Respostas:

25

Não há problemas técnicos com isso.

Isso não fará nenhuma diferença para o SQL Server.

Do ponto de vista da usabilidade, nomes de identificadores que começam com um número sempre devem ser citados para que

exec some_schema.16_TestStoredProc

não seria válido e você deve sempre usar

exec some_schema.[16_TestStoredProc]

Também ao visualizar os procedimentos armazenados por ordem alfabética - por exemplo, no Object Explorer esse prefixo não pode muito bem ser útil na tentativa de encontrar um procedimento armazenado e como eles são ordenados lexicographically pode ser um pouco inconveniente que 18_TestStoredProcprecede 2_TestStoredProc.

Não vou explicar por que estamos fazendo isso

Bem, talvez você tenha boas razões. Como você não os compartilha, não é possível comentar sobre eles.

Martin Smith
fonte