Cargando la página...

Diseño de una base de datos MySQL: Consejos y técnicas

Publicado por Jim Unikornian el 26/07/2009 en MySQL - Nivel Básico

Tabla de contenidos

Avatar de
  • El diseño de una base de datos de MySQL: Consejos y técnicas
  • Asignando un nombre a la base de datos, tablas y nombres de campo Tipos de datos
  • Finalización de la base de datos - Especificaciones del Diseño
  • Introducir las especificaciones de MySQL usando phpMyAdmin

La tabla de contenidos pertenece al artículo completo y no al contenido parcial de cada página del mismo si fuese el caso.

Leer los comentarios.

Resúmen

Usted está planeando desarrollar una aplicación web PHP que necesita una base de datos MySQL. ¿Y ahora qué? Usted necesita diseñar primero su base de datos MySQL. Necesita un poco de ayuda? Siga leyendo.

Sobre el autor

Avatar de Jim Unikornian

Jim Unikornian tiene 36 años, vive en Argentina / Buenos Aires / Bahía Blanca y su ocupación es Administrador de base de datos.

Forma parte del club desde 07/02/2009 a las 14:08 habiendo estado en linea 18/11/2009 a las 01:45 por última vez.

Ha publicado 1 artículos en clubdesarrolladores con un promedio de valoración de 9.17 puntos.

Estadísticas

  • Leido 15168 veces
  • Valorado 9.17 puntos

El diseño de una base de datos de MySQL: Consejos y técnicas



La mayoría de los desarrolladores no tienen un diseño de fondo en relación con MySQL, así que cuando crean su base de datos, es ineficiente, con errores y poco fiable.

Bien por la creación de las especificaciones para su base de datos MySQL, su aplicación será eficiente y confiable, ya que responde a las normas de la industria para la creación de una adecuada base de datos.

Usted obtiene los siguientes beneficios al diseñar de forma adecuada una base de datos MySQL:

* Velocidad - Dado que la base de datos es eficiente y utiliza los datos correctos y tipos de caracteres de longitud, mejorará la velocidad de consulta.

* Seguridad - La seguridad mejora, ya que permiten a los datos específicos se almacenan en la base de datos MySQL, y nada más.

* Eficiencia del espacio de almacenamiento - Ya que está desarrollando una base de datos que es puramente basado en especificaciones de los datos, no habrá bytes o caracteres innecesarios almacenados en la base de datos MySQL. Esto ahorra espacio en disco.

Este tutorial se centrará en el diseño de una base de datos MySQL para aplicaciones web de PHP y la utilización de la interfaz de phpMyAdmin. Abajo están los requisitos para que pueda diseñar su base de datos (a partir de cero):

* XAMPP, para las pruebas y el acceso a scripts PHP phpMyAdmin.

* Lista de campos y sus tipos de datos. Necesitará un completo entendimiento de los datos para ser procesados y almacenados.

* El número de caracteres en cada pieza de datos que deben almacenarse.

Tenga en cuenta que este tutorial ha sido probado en la versión 5.0.67 de MySQL. Diferentes versiones de MySQL podría afectar el diseño de su base de datos, pero básicamente el concepto será el mismo.
Este tutorial también asume que el formato de tabla que se utilizará será MyISAM, que es la tabla por defecto para MySQL.

Asignando un nombre a la base de datos, tablas y nombres de campo Tipos de datos



Para ayudarle a comprender fácilmente los procesos, vamos a presentar la guía de aprendizaje con una aplicación de la vida real. Vamos a suponer que se da una tarea de diseñar una aplicación web que recibirá las quejas de los clientes en su sitio web.

Durante su sesión de tormentas de ideas, usted arribó con los siguientes datos que deben ser recogidos en el formulario web cada vez que haya una queja relacionada con el cliente:

* Nombre del cliente (Ejemplo: Juan Pérez).

* Precio de venta (Ejemplo: 34878,456). Esto no debería exceder de 4 dígitos antes de la coma decimal y permitir sólo 3 dígitos después del punto decimal. Además, los valores almacenados no deben ser negativos.

* Fecha de compra (con este formato: 2009-05-16, o aaaa-mm-dd).

* Clave de serie del producto (sólo entero, no deberían ser los valores negativos, de hasta 5 dígitos, utilice ceros para rellenar en caso de tener menos de 5 dígitos) Ejemplo: 00567, 56453, 00021.

* Detalles de queja (aceptar de entrada de texto de cualquier longitud).

* Fecha de recepción de denuncia (muestra la hora actual y la fecha en que se envió el formulario).

Ahora que hemos definido claramente los datos que deben ser recogidos, el siguiente paso es asignar un nombre a la base de datos y la tabla.

De acuerdo con la directrices de MySQL, el nombre de base de datos, nombre de tabla y nombres de campo no debe superar los 64 caracteres de longitud, e idealmente no debe contener caracteres especiales.

Por simplicidad podemos nombrar la base de datos "customercomplaint", y, a continuación, podemos nombrar la tabla de base de datos "customertable".
Cuanto más se pueda simplificar la denominación, será más conveniente para utilizarla en los correspondientes scripts PHP.
Evite el uso de mayúsculas en nombres de la base de datos, nombres de campos y tablas, porque puede crear confusión al formular las consultas desde PHP a la base de datos.

Para los correspondientes tipos de datos para cada una de esas variables, figura a continuación es una captura de pantalla de los tipos de datos disponibles para MySQL:

/res/userimages/636/88-datatypes.jpg

Los tipos de datos de MySQL más comúnmente utilizados son VARCHAR, DECIMAL, DATE, INT, TEXT y TIMESTAMP.

VARCHAR es de uso común para cadenas de longitud variable de hasta 255 caracteres. Si usted debe almacenar y procesar datos de naturaleza alfanumérica, este tipo de datos es el más adecuado.
Los ejemplos más comunes de datos reales que se ajusten a este tipo incluyen nombres de personas, códigos postales, números de teléfono y cualquier tipo de datos alfanuméricos que no exceda de 255 caracteres de longitud. No utilice el tipo VARCHAR al almacenar números que se utilizarán para cálculo, ya que podría causar algunos problemas relacionados con la computación. En otras palabras, podría afectar la exactitud e integridad de la computación.

DECIMAL es adecuado para almacenar los números que se utilizarán para cálculo. En MySQL, se puede especificar el número de dígitos en números permitidos para ser almacenados (incluyendo el número de decimales). También podemos especificar si se permiten valores negativos.
La asignación de la longitud adecuada del tipo DECIMAL puede ser complicada. Por ejemplo, si usted necesita para almacenar sólo 5 dígitos antes del punto decimal y permitir sólo 3 dígitos después del punto decimal, la longitud adecuada / valores que se configuran en la base de datos es:

Decimal (5 +3, 3) o decimal (8, 3)

Ejemplos de números permitidos: 12345.678, 56872.690, 11.6 y 12.568
Los siguientes números, sin embargo, retornarán error: 128781.1, 8972865.231

El tipo de datos DATE es recomendado para el almacenamiento de fechas. El formato de fecha predeterminado para MySQL es 2009-05-18 [año-mes-día].

El tipo de datos INT se recomienda si va a guardar números que no contengan un punto decimal. INT significa entero. Una vez más, como en DECIMAL, especificar correctamente INT en MySQL puede ser complicado.

Hay varios tipos entero que usted necesita conocer, así como el número máximo de dígitos que pueden tener:

* TINYINT - Este tipo aceptará hasta 3 dígitos como máximo.

* SMALLINT - Permite un máximo de 5 dígitos como máximo.

* Este tipo aceptará un máximo de 8 dígitos como máximo.

* INT - Este tipo le dejará ir hasta 10 dígitos.

* BIGINT - Si va a permitir hasta 20 dígitos, este es recomendable.

TEXT es un tipo de datos muy útil que acepta entradas de texto, una mezcla de cualquier tipo de caracteres que conforman el contenido de los formularios web. VARCHAR sólo puede aceptar hasta 255 caracteres, pero TEXT puede ser usado para almacenar datos que supere esa cantidad.

Cuando el tipo de datos TIMESTAMP es seleccionado, mediante la verificación de "CURRENT_TIMESTAMP" como por defecto, MySQL regresa automáticamente la fecha y hora para cada inserción de datos.

Si tiene alguna pregunta sobre éste artículo por favor deje un comentario y será respondido.

Descargas

No existen descargas asociadas

Comentarios

Sus comentarios son importantes.

Listado de comentarios

1
27
octubre
2009
Avatar de Daniel Santilli
Daniel Santilli aportó:
Muy bueno. Sencillo y entendible!!!
2
18
noviembre
2009
Avatar de Jim Unikornian
Jim Unikornian [Autor] aportó:
gracias
3
20
septiembre
2010
Avatar de belen romero
belen romero aportó:
me agrado la explicación, me ha servido de mucho. Gracias :D
4
15
abril
2011
Avatar de greysi chacon
greysi chacon aportó:
se comprende bastante tomando en cuenta que tengo mucho tiempo sin saber nada de programación gracias
5
09
mayo
2012
Avatar de pedro lopez
pedro lopez aportó:
muy buen y explicito, me servirá para mi proyecto..! gracias

Agregar un comentario

Debe estar identificado para agregar un comentario