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

Base de datos diferentes nombre de campos diferentes

Estas en el tema de Base de datos diferentes nombre de campos diferentes en el foro de Mysql en Foros del Web. Qué tal. Aquí una duda de un novato en esto del lenguaje mysql. Tengo una base de datos llamada tvirtual tvirtual cuenta con muchas tablas. ...
  #1 (permalink)  
Antiguo 23/11/2009, 00:44
 
Fecha de Ingreso: noviembre-2009
Mensajes: 2
Antigüedad: 14 años, 5 meses
Puntos: 0
Pregunta Base de datos diferentes nombre de campos diferentes

Qué tal. Aquí una duda de un novato en esto del lenguaje mysql.

Tengo una base de datos llamada tvirtual

tvirtual cuenta con muchas tablas. pero el ejemplo solo lo pondré con "category".

Ahora bien, tengo la base de datos llamada tienda con una tabla llamada "categoría"
los campos de cada una de las tablas son realmente lo mismo, solo cambia el nombre de cada campo y en "tvirtual" existe un campo mas que en "tienda".


La pregunta es: ¿Cómo hacer para que cada que ingresen datos a la base de datos "tvirtual" aparezca lo mismo en "tienda"?

Es decir:

1.- supongamos que agregamos datos en el campo "image" de la base de datos "tvirtual" de la tabla category

Esos datos quiero que también aparescan automaticamente en el campo:"imagen" de la base de datos "tienda" de la tabla "categoria"

¿Cómo puede esto ser posible?

Espero me halla explicado.

Atte. Edgar Martínez
  #2 (permalink)  
Antiguo 23/11/2009, 05:21
Avatar de gnzsoloyo
Moderador criollo
 
Fecha de Ingreso: noviembre-2007
Ubicación: Actualmente en Buenos Aires (el enemigo ancestral)
Mensajes: 23.324
Antigüedad: 16 años, 4 meses
Puntos: 2658
Respuesta: Base de datos diferentes nombre de campos diferentes

Con un trigger.
Un trigger es una rutina programada semejante a un Stored Procedure que se dispara (como su nombre lo indica) ante un evento INSERT, UPDATE o DELETE. Se definen sobre una tabla específica, y sólo pertenecen a ella.
Ten en cuenta:
- Sólo son rutinas para controlar cosas que sucedan o deban realizarse en los momentos en cuestión.
- Sólo se disparan por INSERT, UPDATE o DELETE. No pueden ser invocados.
- No tiene parámetros de entrada ni parámetros de salid, desde el punto de vista de programas. Los únicos datos de entrada son los VALUE del INSERT, o los campos afectados por los SET del UPDATE.
- No devuelven datos ni valores.
- Bloquena su propia tabla mientras se ejecutan, por lo que no puede invocar un INSERT, UPDATE o DELETE sobre la propia tabla.
- Pueden hacerlo sobre otras tablas, siempre y cuando esas tablas no tengan a su vez TRIGGERS que apunten a la tabla que disparó el primero. Esto es El TRIGGER T1 de la tabla A se puede realizar si inserta datos en la tabla B en tanto B no tenga un trigger que ante una inserción pretenda realizar un INSERT en la tabla A (provocaría una recursividad no admitida por MySQL).

Para más datos o ejemplos, leer el manual de referencia: Capítulo 20. Disparadores (triggers), o bien buscar en Google
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #3 (permalink)  
Antiguo 23/11/2009, 10:00
 
Fecha de Ingreso: noviembre-2009
Mensajes: 2
Antigüedad: 14 años, 5 meses
Puntos: 0
Sonrisa Respuesta: Base de datos diferentes nombre de campos diferentes

gnzsoloyo

Mi estimado, si no es mucho pedir podrías solo ponerme el ejemplo de como crear el trigger con el ejemplo que puse?... es decir:

base de datos a = Tvirtual = tabla "category" campos:

category_id
image
parent_id
sort_orden
date_adden
date_modified

Base de datos b = tienda = tabla "categoria" campos:

id_categoria
imagen
f_alta
descripcion
orden
f_modif

-----------------------------------------------------------------------------------------
donde los campor relacionados son:

id_category con id_categoria
image con imagen
dame_adden con f_alta
date_modified con f_modif


------------------------------------------------------------------------------------------
en verdad te lo agradecería, he leído el tema de la url que me indicaste, pero como te digo soy novato nivel -1 en mysql y en verdad la única forma en estos momentos de aprender la lección que me has dado es viendolo con un único ejemplo. espero no incomodarte con el favor que te pido y espero comprendas. Gracias por tu primer respuesta.

atte. Edgar Martínez
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 15:39.