No sé si realmente existe alguna "mejor" convención de nomenclatura, ya que realmente se reduce a preferencias personales y facilidad de desarrollo. Mi consejo es elegir una convención de nomenclatura y cumplirla. Si desea separar las palabras con un guión bajo, hágalo en todos los objetos de su base de datos. Si desea utilizar camelCase, hágalo en todos los objetos de su base de datos.
En mi tienda nos adherimos a las siguientes reglas:
Separamos las palabras con guiones bajos y usamos todas las letras minúsculas.
Los nombres de nuestras tablas describen lo que son: dbo.person, dbo.invoice.
Nuestros nombres de tabla de muchos a muchos también describen cuáles son (con la adición de mm para indicar una relación de muchos a muchos que se está mapeando: dbo.person_mm_address. Nuestros procedimientos almacenados definidos por el usuario describen tanto el objeto como la acción que se realiza: usp_person_select , usp_address_select_by_city Nuestras vistas y funciones siguen las mismas reglas que los procedimientos almacenados. Nuestros índices incluyen tabla, columnas clave (en orden) y una indicación de clustered / non-clustered: ix_person_last_name_first_name_nc
Solo porque esto es lo que usamos en mi tienda, no significa que estas reglas sean adecuadas para usted. Elija algo con lo que usted y su equipo de desarrollo acuerden que sea útil y fácil de desarrollar, y establezca una cultura de conocer y usar cualquier convención de nomenclatura que decida. En nuestro caso, esto incluye la revisión de código para cualquier objeto creado en una base de datos. Con el tiempo, la combinación de una convención de nomenclatura documentada y una revisión del código de pares ha llevado a cada vez menos desviaciones de la convención.
Espero que esta "no respuesta" ayude de alguna manera.