Ver Mensaje Individual
  #2 (permalink)  
Antiguo 18/02/2010, 02:41
quimfv
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Sabadell
Mensajes: 4.897
Antigüedad: 16 años, 1 mes
Puntos: 574
Respuesta: Novato con las bases de datos

Ante todo te aconsejo que busques un buen libro de teoria de bases de datos.

Dicho es to vamos a tu problema... si te lees ese libro veras rapidamente que la tabla que tienes no cumple las regals de normalizacion de una base de datos relacional.

Esa tabla se debe dividir en:

Edificios
Id_edicio (PK)
edificio
idProvincia (FK)
...otros...

Provincias
idProvincia (PK)
Provincia

Salas
idSala (PK)
Id_edicio (FK)
Nombre

Marcas
idMarca (PK)
Marca
...otros...


Modelos

idModelo (PK)
idMarca (FK)
Modelo
...otros...

Maquinas
Id_maquina (PK)
idModelo (FK)
idSala (FK)
...otros...

En azul los campos que te faltan.

A base de consultas de agregacion podrias generar esta estructura a partir de la tabla que tienes.

Por ejemplo

Código MySQL:
Ver original
  1. SELECT Id_edicio,edificio,provincia INTO edificios FROM tutabla GROUP BY Id_edicio,edificio,provincia

Tienes una alternativa, que a la larga no es buena. Usar la tabla que tienes como sifuera la tabla Maquinas y claro elegir Id_maquina como PK no Id_edicio. Id_maquina no tiene repeticiones, o no debería.

Quim

Última edición por quimfv; 18/02/2010 a las 02:54