Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » Mysql »

Actualizar Valor de campo a Id de tabla catalogo

Estas en el tema de Actualizar Valor de campo a Id de tabla catalogo en el foro de Mysql en Foros del Web. Hola, Tengo una tabla en la cual tengo un campo con una cadena de texto, esta tabla la quiero migrar a un sistema, el cual ...
  #1 (permalink)  
Antiguo 29/06/2011, 13:43
 
Fecha de Ingreso: junio-2011
Mensajes: 3
Antigüedad: 13 años, 5 meses
Puntos: 0
Actualizar Valor de campo a Id de tabla catalogo

Hola,

Tengo una tabla en la cual tengo un campo con una cadena de texto, esta tabla la quiero migrar a un sistema, el cual cuenta con una tabla catalogo con valores para el campo anterior mencionado, ocupo que la cadena de texto de este campo, al migrarse, se pase como el Id del valor de catalogo que le corresponde. Espero puedan apoyarme con alguna tecnica a seguir para llevar a cabo este proceso, el lenguage de programacion que estoy utilizando es PHP y la base de datos es Mysql.

Ej:

- Tabla_1 (tabla original)
Campo Valor
+ Doctor Jorge Gomez

- tabla_1(migracion)
Campo Valor
+ id_doctores 1

- tabla_2(catalogo)
Campo Valor
+ id Jorge Gomez
  #2 (permalink)  
Antiguo 30/06/2011, 06:15
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Sabadell
Mensajes: 4.897
Antigüedad: 16 años, 8 meses
Puntos: 574
Respuesta: Actualizar Valor de campo a Id de tabla catalogo

Suponiendo que los nombres estan escritos exactamente igual en la tabla original y la tabla catalogo.

Copia la tabla tal cual.

Si los nombres del catalogo son una clave alternativa, es decir son unicos, puedes relacionar la tabla migrada con el catalogo por el nombre, con esta query creas la nueva tabla con los campos de la original y con el id del catalogo.

Si los nombres no son únicos lo tendras mas complicado...(es decir si hay dos Jorge Gomez distintos)


Código MySQL:
Ver original
  1. SELECT ...campos tabla original, catalogo.id INTO TablaNueva
  2. FROM TablaOriginal INNER JOIN catalogo
  3. ON TablaOriginal.nombre=catalogo.nombre;

Si nombre en catalogo no es unico podrias trabajar sobre los que si sean unicos, y luego introducir el resto a mano.

Una vez hayas comprobado que todo cuadra puedes eliminar el campo nombre de la tabla migrada.

Código MySQL:
Ver original
  1. SELECT tablaNueva.nombre,catalogo.nombre
  2. FROM tablanueva inner join catalgo
  3. on Tablanueva.id=catalgo.id;

te servirá para ver que todo cuadra....
__________________
Quim
--------------------------------------------------
Ayudar a ayudar es una buena práctica!!! Y da buenos resultados.

Última edición por quimfv; 30/06/2011 a las 06:20
  #3 (permalink)  
Antiguo 01/07/2011, 12:08
 
Fecha de Ingreso: junio-2011
Mensajes: 3
Antigüedad: 13 años, 5 meses
Puntos: 0
Respuesta: Actualizar Valor de campo a Id de tabla catalogo

Hola muchas gracias por tu respuesta, probare tu recomendacion. Gracias

Etiquetas: php
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 23:00.