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

[SOLUCIONADO] como puedo copiar registro de una misma tabla

Estas en el tema de como puedo copiar registro de una misma tabla en el foro de Mysql en Foros del Web. En una tabla tengo 3 o 4 registros y necesito crear 200 registros mas repetidos de los que ya tengo, como lo puedo hacer, la ...
  #1 (permalink)  
Antiguo 24/05/2013, 11:51
 
Fecha de Ingreso: mayo-2011
Mensajes: 1.201
Antigüedad: 12 años, 10 meses
Puntos: 10
como puedo copiar registro de una misma tabla

En una tabla tengo 3 o 4 registros y necesito crear 200 registros mas repetidos de los que ya tengo, como lo puedo hacer, la tabla tiene un clave primaria auto incrementable.

Saludos.
  #2 (permalink)  
Antiguo 24/05/2013, 12:38
Avatar de zarwar  
Fecha de Ingreso: mayo-2013
Ubicación: Madrid
Mensajes: 77
Antigüedad: 10 años, 10 meses
Puntos: 4
Respuesta: como puedo copiar registro de una misma tabla

Yo te recomendaría hacer un insert...select... en otra tabla temporalmente, como se comentó hace tiempo en el siguiente hilo: http://www.forosdelweb.com/f86/select-insert-1023778/#post4314385 por gnzsoloyo

Un saludo
__________________
Entra en mi blog sobre base de datos Oracle:
http://mundodb.es
  #3 (permalink)  
Antiguo 24/05/2013, 13:24
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: como puedo copiar registro de una misma tabla

Cita:
Iniciado por pithon Ver Mensaje
En una tabla tengo 3 o 4 registros y necesito crear 200 registros mas repetidos de los que ya tengo, como lo puedo hacer, la tabla tiene un clave primaria auto incrementable.

Saludos.
Por lo que dices, parece que quieres tomar esos 3 ó 4 registros y volverlos a insertar otra vez unas 50 veces...
¿Es así?

¿Para qué quieres hacer eso?

__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #4 (permalink)  
Antiguo 24/05/2013, 15:23
 
Fecha de Ingreso: mayo-2011
Mensajes: 1.201
Antigüedad: 12 años, 10 meses
Puntos: 10
Respuesta: como puedo copiar registro de una misma tabla

Hola gracias por vuestro interes, gnzsoloyo si eso es lo quiero.
para que lo quiero?
Lo quiero para probar la estetica de una aplicacion ya q con 3 o 4 registro no puedo necesito muchos mas
  #5 (permalink)  
Antiguo 24/05/2013, 18:32
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: como puedo copiar registro de una misma tabla

Hay dos soluciones:
1) Stored procedure que genere esas copias.
2) Volcar los datos a un archivo y luego usarlos para crear un script de carga.

Las dos formas son simples. ¿Cuál eliges?
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #6 (permalink)  
Antiguo 24/05/2013, 19:23
 
Fecha de Ingreso: mayo-2011
Mensajes: 1.201
Antigüedad: 12 años, 10 meses
Puntos: 10
Respuesta: como puedo copiar registro de una misma tabla

Gracias gnzsoloyo por tu ayuda, la primera opcion que propones no se a que te refieres.
Un saludo.
  #7 (permalink)  
Antiguo 25/05/2013, 02:15
Avatar de zarwar  
Fecha de Ingreso: mayo-2013
Ubicación: Madrid
Mensajes: 77
Antigüedad: 10 años, 10 meses
Puntos: 4
Respuesta: como puedo copiar registro de una misma tabla

Gnzsoloyo se refiere a procedimientos almacenados en base de datos.

Te pongo un enlace a la página de mysql con la sintaxis. Incluye algún ejemplo:
http://dev.mysql.com/doc/refman/5.0/es/create-procedure.html

Un saludo
__________________
Entra en mi blog sobre base de datos Oracle:
http://mundodb.es
  #8 (permalink)  
Antiguo 25/05/2013, 09:53
 
Fecha de Ingreso: mayo-2011
Mensajes: 1.201
Antigüedad: 12 años, 10 meses
Puntos: 10
Respuesta: como puedo copiar registro de una misma tabla

Hola, la verdad que no consigo entender como tendria que hacerlo para crear los duplicados de golpe.

para un duplicado hice algo asin no se si seria valido, pero como tendria que hacer un bucle o una manera mejor para duplicar los registros.

Código MySQL:
Ver original
  1. DELIMITER $;
  2.  
  3. CREATE PROCEDURE duplicar(in andrea varchar(50), in 24 int() )
  4.  
  5.  
  6. INSERT INTO registro( nombre, edad)VALUE(andrea, 24)
  7. $;

Última edición por pithon; 25/05/2013 a las 10:39
  #9 (permalink)  
Antiguo 25/05/2013, 11:22
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: como puedo copiar registro de una misma tabla

Te estás acercando, pero desde tu nivel de conocimientos te va a resultar muy complicado, sin ofender. Necesitas conocer bastante más y tener una experiencia mínima en SP para hacer lo que quieres sin meterte en camisa de once varas.
Mi sugerencia es simple:
Toma lo que escribiste (que de todos modos está mal escrito), y hazlo así:
Código MySQL:
Ver original
  1. INSERT INTO registro( nombre, edad)
  2.     ('Andrea', 24),
  3.     ('Fabiana', 16),
  4.     ('Juan Manuel', 33)
Luego toma los últimos tres renglones, y haces un Copy+Paste, tal que te vaya quedando:
Código MySQL:
Ver original
  1. INSERT INTO registro( nombre, edad)
  2.     ('Andrea', 24),
  3.     ('Fabiana', 16),
  4.     ('Juan Manuel', 33),
  5.     ('Andrea', 24),
  6.     ('Fabiana', 16),
  7.     ('Juan Manuel', 33),
  8.     ('Andrea', 24),
  9.     ('Fabiana', 16),
  10.     ('Juan Manuel', 33),
  11.     ('Andrea', 24),
  12.     ('Fabiana', 16),
  13.     ('Juan Manuel', 33),
  14.     ('Andrea', 24),
  15.     ('Fabiana', 16),
  16.     ('Juan Manuel', 33),
  17.     ('Andrea', 24),
  18.     ('Fabiana', 16),
  19.     ('Juan Manuel', 33),
Hazlo tantas veces como necesites, asegurándote que el último juego de valores se cierre con un punto y coma:
Código MySQL:
Ver original
  1. ...
  2.     ('Andrea', 24),
  3.     ('Fabiana', 16),
  4.     ('Juan Manuel', 33);
Luego copia eso y ejecutalo en MySQL...

Es rudimentario, pero te servirá.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)
  #10 (permalink)  
Antiguo 25/05/2013, 12:18
 
Fecha de Ingreso: abril-2012
Mensajes: 124
Antigüedad: 11 años, 11 meses
Puntos: 3
Respuesta: como puedo copiar registro de una misma tabla

Buenas,

Hace unos días también tuve que rellenar una base de datos de usuarios de prueba, puede que te sirva de algo.
Cita:
Editado: Código de programación no permitido en Foros de Bases de Datos. Sólo SQL.

Última edición por gnzsoloyo; 25/05/2013 a las 14:05
  #11 (permalink)  
Antiguo 25/05/2013, 16:53
 
Fecha de Ingreso: mayo-2011
Mensajes: 1.201
Antigüedad: 12 años, 10 meses
Puntos: 10
Respuesta: como puedo copiar registro de una misma tabla

Hola, bueno al final lo hice como dijo gnzsoloyo, volcando los datos en un archivo.
Pero intento aprender como tendria q hacerlo con la tecnica de procedimiento de almacenamiento que parece muy interesante.

Saludos

Etiquetas: registro, registros, tabla
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 11:25.