ManyComics
Powered by PHP
Powered by MySQL
manycomics.com 
Portada   Postales   Informática   Blog   Contactar   Autor
 Ingeniería del Software   Sistemas Operativos   Aplicaciones 

 
Estás en: ManyComics > Informática > Ingeniería del Software > Bases de Datos > Anomalías

¿Anomalías?


  Para todo problema complejo hay una respuesta corta, simple y errónea.
H.L. Mencken.

Veamos como ejemplo el de un mal diseño evidente. Aun a riesgo de que siempre existirá algún detractor de la normalización que dirá algo así como "a mí no se me ocurriría hacer semejante diseño", lo cierto es que esta es la mejor forma de ver la situación que se puede originar; en otros casos las cosas no serán tan claras.

Ejemplo: Distribución de plantas carnívoras

Supongamos que tenemos un negocio de venta de plantas carnívoras; en la actualidad nos dedicamos a distribuir las referencias PLTA1, PLTA2, PLTA3, PLTA4, PLTA5 y PLTA6.
 
Zanahoria Carnívora Tulipán Carnívoro Espárrago Carnívoro
Ref.PLTA1
Zanahoria Carnívora
Ref.PLTA2
Tulipán Carnívoro
Ref.PLTA3
Espárrago Carnívoro
Puerro Carnívoro O Tronco Carnivore Cheesantemo Carnívoro
Ref.PLTA4
Puerro Carnívoro
Ref.PLTA5
O Tronco Carnivore
Ref.PLTA6
Cheesantemo Carnívoro

Contamos pues con una serie de proveedores a los que compramos ejemplares de diversas especies que después vendemos y distribuímos a las sucursales de nuestras empresas clientes.

Imaginemos que disponemos de una aplicación para gestionar nuestros datos, que trabaja sobre el siguiente diseño:

Empresa
(a.clave)
Sucursal
(a.clave)
TelSuc Articulo
(a.clave)
Precio Stock Alimento Proveedor
Niflowers SUC1 111111 PLTA1 150.000 10 dulces Zombi
Niflowers SUC2 131313 PLTA1 150.000 15 dulces Zombi
Niflowers SUC2 131313 PLTA2 615.000 5 pasta Phikux
Niflowers SUC2 131313 PLTA3 150.000 230 pollo Zombi
Niflowers SUC2 131313 PLTA5 150.000 147 pinchos Zombi
Niflowers SUC2 131313 PLTA2 615.000 263 pasta Phikux
Megaflower SUC1 777777 PLTA2 150.000 270 pasta Zombi
Megaflower SUC1 777777 PLTA4 375.000 68 sandwich Monster
Megaflower SUC2 999999 PLTA6 250.000 25 queso Zombi

Veamos las situaciones con las que nos podemos encontrar como fruto de este diseño:
 

Actualización:

Zanahoria Carnívora Un buen día el precio de las zanahorias carnívoras sube, pasando de costar 150.000 a 750.000 la unidad... ops!, hummmmm... esto obliga a nuestra aplicación a modificar dos tuplas en este caso, vaya, espero que los programadores lo habrán tenido en cuenta :-?
 

Inserción:

Pepinillo Carnívoro La Zombi Corporation, uno de nuestros proveedores, tras muchos años de duras y costosas investigaciones consigue una nueva planta que también nos interesa distribuir: el pepinillo carnívoro (Ref.PLTA7)... hummmmm... queremos incluirlo en nuestra base pero aún no conocemos toda la clave...
 

Borrado:

Cheesantemo Carnívoro Se cierra la sucursal SUC2 de Megaflower... actualizamos la base de datos. Unos días más tarde necesitamos información sobre PLTA6, buscamos y... errrrr... ¿nada?... hummmm... pensamos un poco y caemos en la cuenta de que, al eliminar la sucursal SUC2 de Megaflower, se eliminó la información que pudiera existir sobre PLTA6 en la misma operación... ops!, hemos perdido información. Bueno, no sabemos exactamente cuantas tenemos en stock pero ahí están todas juntas... buf!, menos mal que por suerte son pocas y bastará con contarlas... de momento pondré este queso que me han regalado junto a ellas... hummm... no recuerdo... ¿y qué comían estas plantas?... =:-O
 

Google

Desaparición.
¿Puedes facilitar algún dato?
Persona desaparecida
>más información<
Get Firefox!

De interés:
I.I.U.G.:
International Informix Users Group.

Grupos de news:
...theory
...informix
...oracle
...sqlserver
...ms-access
...ingres
...adabas

Libros:
Base de Datos Relacionales
Bases de Datos Relacionales
Matilde Celma y Juan Carlos Casamayor

Programación de Bases de Datos...
Programación de Bases de Datos con JDBC y Java
George Reese



    Powered by Apache Recomendado
800x600
 
[Portada ManyComics] [Postales virtuales] [Informática] [Blog] [Contactar] [Autor]

© Javier Mtz. de Ibarreta, 2000-2008