2008-10-06 7 views
6

Tengo una pregunta sobre campos en bases de datos que son medidas que pueden mostrarse en unidades diferentes pero que se almacenan solo en una, como "altura", por ejemplo.Codificar una medida en un nombre de campo de base de datos

¿Dónde debe indicarse la "unidad de patrón"? Por supuesto, en la documentación, etc. Pero todos sabemos que nadie lee la documentación y que las cosas autodondeadas son preferibles.

Desde un punto de vista práctico, ¿qué piensas de codificarlo en el campo de la base de datos (como height_cm, por ejemplo) ?.

Me parece raro a primera vista, pero me parece práctico evitar cualquier error cuando diferentes personas manejan la base de datos directamente y la "unidad de patrón" nunca cambiará.

¿Qué opinas ?.

Atentamente.

+0

Estoy de acuerdo con Scott; ¿Qué hay de malo en nombrar el campo de modo que las unidades en las que se expresa la medición sean obvias? –

Respuesta

8

¿Qué hay de raro con height_cm? Me parece bien.

A veces ve medidas y unidades en dos campos separados, lo que es mucho más doloroso.

Siempre que sepa que las unidades no van a cambiar, creo que height_cm es una buena manera de manejarlo.

+0

De acuerdo, pero daría un paso más y sería muy claro. Si viera "height_cm", supondría que se referían a la altura en centímetros, pero antes me habían quemado los nombres de los campos y me gasté algunos ciclos confirmando y adivinando. Los caracteres son baratos: llámalo "height_in_centimeters" –

+0

Asegúrate de deletrearlo correctamente para quién esperas leerlo o mantenerlo. 'Medidor' es la ortografía estándar científica, pero 'medidor' es la ortografía estadounidense. http://en.wikipedia.org/wiki/Centimetre – Liam

+0

@TrickyNixon: En desacuerdo. Los personajes no son baratos. Cuando hay abreviaturas ESTANDARIZADAS para unidades (o incluso abreviaturas muy comúnmente usadas) - Creo que es un desperdicio no usarlas ... – Yarik

2

La mayoría de las bases de datos admiten comentarios en las columnas. Por ejemplo, en Postgres podría configurar un comentario como este:

COMMENT ON COLUMN my_table.my_column IS 'cm'; 

Almacenamiento del nombre de la unidad de esta manera significa que su base de datos es auto-documentado. También recomendaría utilizar unidades científicas estándar (es decir, el sistema métrico).

+0

¡No confiaría en un programador de mantenimiento para leer el comentario de la columna! – finnw

+0

De acuerdo, para una cantidad tan pequeña de datos, vaya con 'height_in_centimetres' como el nombre de la columna.pero para unidades más complejas como "kilogramos cuadrados por segundo al cuadrado" definitivamente usaría los comentarios. Y créanme, tales unidades ocurren. – Liam

0

Acepto, nada de malo en agregar la unidad al nombre del campo.

Lo único que diría es que la convención de nomenclatura sea coherente en toda su base de datos, es decir, evite situaciones en las que tenga height_cm y mm_width presentes en la misma base de datos.

0

Tenga cuidado con las medidas que pueden cambiar como las monedas. En muchos casos, no es práctico cambiar el nombre del campo de la base de datos cuando cambia la medida.

Es un poco tonto tener un campo llamado amount_mk que solía contener un importe en dinero en las marcas, pero que actualmente contiene dinero en euros.

Cuestiones relacionadas