2010-07-15 52 views
15

Al nombrar las tablas y el esquema de la base de datos es mejor utilizar singular o plural. Por ejemplo. ¿Debería ser Clientes o Cliente?Numeración de tablas de base de datos, plural o singular

¿Y al nombrar debe ser capital como cliente o cliente? ¿Alguna buena práctica con respecto a nombrar?

+0

También similar a: [? Bases de datos, tablas y columnas de convenios de denominación] (http://stackoverflow.com/ preguntas/7662/database-table-and-column-naming-conventions) – Mike

+0

Duplicado por [Table Naming Dilemma: Singular vs. Plural Names] (http://stackoverflow.com/q/338156/90527), pero ese obtuvo mas atencion. – outis

Respuesta

20

Esta pregunta requiere una guerra religiosa.

tengo ninguna duda de que debe ser plural porque ...

  • Una tabla es una colección de filas.
  • La sintaxis de SQL se vuelve más natural: SELECT * FROM Customers en lugar de SELECT * FROM Customer.
  • La analogía con OOP: tiene una clase Customer y una lista u otra colección de clientes llamada Customers.
  • SELECT * FROM Customers AS Customer WHERE Customer.FirstName = 'John' - Customers se refiere a toda la tabla, mientras que Customer se refiere a la fila actual.

cosas negativas

uno tiene que cambiar varias veces entre singular y plural durante el desarrollo. Puede comenzar con un modelo conceptual, por ejemplo un modelo de relación entre entidades, donde la elección natural es nombrar la entidad Customer. A partir de este modelo genera una base de datos y debe pluralizar el nombre para obtener la tabla Customers. Finalmente elige su mapa de O/R favorito y tiene que singularizar el nombre nuevamente para obtener una clase llamada Customer.

Si usted tiene que hacerlo de forma manual ya que la herramienta no disponen de apoyo (por ejemplo ADO.NET Entity Framework antes que .NET 4.0) podría ser una opción razonable para mantener los nombres de tabla singular, sino therfore obtener una clase Customer en lugar de Customers sin cambiar a mano.

+8

+1 para su primer párrafo, aunque su opinión es incorrecta :) – AakashM

+2

Utilicé el nombre singular, pero después de cambiar a los carriles, donde el plural es el estándar, la denominación plural se siente más natural. Esto es especialmente cierto para las consultas – Tarscher

+0

Parece más natural, pero estaba pensando si tiene algún efecto negativo más adelante en el desarrollo, etc. –

7

singular naming.

se trata de las tuplas, no de las tablas, y una tupla es un cliente, no los clientes. también prefiero nombrar en los casos más bajos, pero eso es por ninguna razón, simplemente lo aprendí así en la escuela.

al final, como dijeron otros, es más una cuestión de preferencia. más importante que la opción si usar plural o singular es mantenerse coherente y hacerlo de la misma manera para todas las tablas: si mezclas pluar y nombres singulares, es un verdadero desastre.

6

Es más o menos una cuestión de preferencia

4

que hay que seleccionar un recipe.ingredient o una recipes.ingredient?

... o selecciona ingredient de recipes en lugar de ingredient de recipe.

¿Selecciona una lista de recipe.ingredient o una lista de recipes.ingredient?

... o selecciona una lista ingredient de recipes en lugar de una lista de ingredient de recipe?

Creo que la coherencia es más importante que la propia convención. Personalmente, prefiero nombres de tablas en minúsculas, pero no voy a defender vehementemente esa elección.

0

Mi elección son singulares y TitleCase :)

cliente es una entidad. La tabla es la colección lógica de la entidad múltiple. Así que plural es preferido.

Para nombres de tabla, la caja pascal es mejor. es decir, CustomerMaster.

Se prefiere usar un prefijo como tblCustomerMaster.

Si está utilizando el nombre del grupo como prefijo luego usarlo en mayúsculas como, nuevoCliente, OLDCustomer

Cuestiones relacionadas