Ver Mensaje Individual
  #4 (permalink)  
Antiguo 18/02/2010, 04:21
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

No, crea las tablas que te he dicho, las PK las creas autoincrementales, y luego vas haciendo consultas de insercion similares a la que te he mandado para llenarlas.

Vamos por pasos

Edificios, crea la tabla con PK autoincremental y con el siguiente nombre idEdificios, usa esta consulta, la llenará la tabla con los edificios sin repeticiones.

Edificios

idEdificios (PK)
Id_edicio
edificio
Provincia
...otros...

Código MySQL:
Ver original
  1. INSERT INTO edificios (Id_edicio,edificio,provincia)
  2. SELECT Id_edicio,edificio,provincia
  3. FROM tutabla
  4. GROUP BY Id_edicio,edificio,provincia

Modificas tu tabla para agregarle el campo idEdificios (ahora tendras idEdificios y id_edicio) usa la siguiente consulta para llenar el campo con la nueva clave para edificios

Código MySQL:
Ver original
  1. UPDATE tutabla INNER JOIN Edificios
  2. ON tutabla.id_edicio = Edificios.id_edicio
  3. SET tutabla.idEdificios = Edificios.idEdificios;


Creas la tabla Marcas con la PK auto incremental

Código MySQL:
Ver original
  1. INSERT INTO Marcas (marca)
  2. SELECT marca
  3. FROM tutabla
  4. GROUP BY marca

esto llenara la tabla con las Marcas sin repetición y asignara un idMarca a cada una.

Luego modificas tutabla y le agragas un campo llamado idMarca con formato entero largo y usas la siguiente consulta para introducir los id


Código MySQL:
Ver original
  1. UPDATE tutabla INNER JOIN Marcas
  2. ON tutabla.marca = Marcas.marca
  3. SET tutabla.idMarca = Marcas.idMarca;

Ahora ya tenemos lo necesario para crear Modelos, la creas con la PK autoincremental y usas

Código MySQL:
Ver original
  1. INSERT INTO Modelos (idMarca,modelo)
  2. SELECT idMarca,Modelo
  3. FROM tutabla
  4. GROUP BY idmarca,modelo

esto llenara la tabla con los modelos sin repeticiones y les asignará el id...

Ahora debes repetir el proceso para introducir en tutabla el id de los modelos, para luego poder sacar la tabla Maquinas, te dejo a ver si lo consigues (recuerda recuperar idEdificios no id_edicios cuando crees la tabla Salas). Con las provincias serà algo similar....

El cambio de clave para los edificios lo he hecho para poder disfrutar de las ventajas de una clave autoincremental....

Quim

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