[Php-avanzado] normalización y tablas

Leonardo Tadei - Pegasus Tech Supply leonardot en pegasusnet.com.ar
Sab Oct 12 10:56:04 ART 2013


Hola Daniel,

	buenísimo, así seguimos avanzando.
	
	Si estás usando PHPMyAdmin, fijate que tiene una opción, cuando estás
en la DB (pero no cuando estás en una tabla) de exportar todo junto en
un solo archivo. En esa opción, además, hay para tildar que exporte solo
la estructura (sin datos): con eso es más que suficiente para revisar la
normalización y tal vez te sea más cómodo para enviarlo como adjunto o
como parte del cuerpo del mail.

	Te respondo intercalado con tu texto.

El sáb, 12-10-2013 a las 10:11 -0300, Daniel Billia escribió:
> Así es Leo te mando la normalización con las tablas buen fin de
> semana 
> 
> 
> 
> 
> 
> 
> documento de
> texto sencillo
> adjunto
> (normalizacion
> II.txt)
> 
> 01)tabla provincias
>         id_prov
>         nombre

	Está bien.

> 02)tabla ciudades
>         id_cid
>         rf_prov
>         nombre
>         co_postal

	Está bien.

> 03)tabla clientes
>         id_cli
>         nombre  
>         apellido        
>         direccion
>         rf_prov

	el campo rf_prov es incorrecto que esté acá: obtenés la provincia
estableciendo una relación con la ciudad.

>         rf_cid
>       telefono
>         email   
>         user
>         pass
>         comercio
>         mensaje
>         onkey           //numero único de sesión 
>         nivel
>         host                    
> 
> 
> 04)tabla marcas
>         id_mar
>         nombre

	Está bien.
	Es un poco chico el tamaño para el nombre.

> 05)tabla rubros
>         id_rub
>         nombre

	Está bien.
	Es un poco chico el tamaño para el nombre.


> 06)tabla articulos
>         id_art
>         codigo
>         detalle
>       t_art
>       marca
>       modelo
>         rubro
>         imagen   
>         descrip 
>         precio
>         fecha

	Está bien.
	No es poco el espacio para el detalle?

> 07)tabla accesos
>         id_acc
>         ingreso
>         id_cli
>         host
>         nombre     //se guarda como historico

	Guardá también el apellido como "histórico", porque con solo el nombre
no tendrás referencia suficiente para ver qué pasó con clientes que ya
no existan..

> 
> 08)tabla registros   // es utilizada para registrar los ingresos
>         id_reg
>         rf_cli
>         nom_ape    // se usa como historico
>         estado
>         fecha

	Viendo el almacenamiento, pareciera que los Accesos y los Registros son
casi el mismo concepto funcional!
	Por qué van por separado? (no te lo pregunto en las tablas, sino por
qué son funcionalidades separadas?)
	Qué es el "estado" que estás guardando como un entero? No debería esto
significar que falta un RF que diga que se deben muestrar los estados de
los registros?
	Guardá también el apellido por separado como "histórico", porque no
vale la pena violar la primera forma normal.



> 09)tabla consultas   //es utilizada para ingreso de los articulos
>         id_cons
>         rf_cli
>         rf_art
>         estado
>         fecha
>         cant
>         pedido

	Estados de consultas como entero? Falta una funcionalidad de mostrar
los estados de las consultas?
	Qué es el campo pedido, que tendrá solo 2 caracteres?
	Si a un cliente le hacen falta 5 productos, tiene que hacer 5
pedidos???


> 10)tabla imagenes
>         id_img
>         name

	El nombre de la imagen es un entero???

>         type

	El tipo de la imagen es un entero???

>         sisze
>         blob



> 11)tabla descripciones
>       id_des
>         encabezado
>         detalle

	Está bien.
	Me parece que no te conviene que el campo detalle sea un BLOB, porque
está pensado para manejar datos binarios. Es más cómodo que sea de tipo
TEXT, para que puedas poner texto, html, etc.


	Fijate de agrandar un poco los tamaños de los varchar para los nombres
y sacar el campo incorrecto en los clientes.		
	Por favor, respondeme intercaladas cada pregunta, así vamos más rápido.


	Buen fin de semana!
-- 
Leonardo Tadei
leonardot en pegasusnet.com.ar
Web: http://leonardo.tadei.com.ar
Firma pública: http://www.pegasusnet.com.ar/LeonardoTadei-public.key



Más información sobre la lista de distribución Php-avanzado