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

Insert masivo

Estas en el tema de Insert masivo en el foro de Mysql en Foros del Web. Hola a todos, y feliz año, hacia tiempo no andaba por aqui, pero se me presento un dilema: tengo un string de ids = '1,2,3,4'; ...
  #1 (permalink)  
Antiguo 09/01/2010, 15:42
Avatar de Sensorium  
Fecha de Ingreso: julio-2007
Ubicación: Montevideo-Uruguay
Mensajes: 207
Antigüedad: 17 años, 5 meses
Puntos: 7
Exclamación Insert masivo

Hola a todos, y feliz año, hacia tiempo no andaba por aqui, pero se me presento un dilema:

tengo un string de ids = '1,2,3,4';

ahora mi pregunta es puedo generar una sola sentencia INSERT en donde se generen varios registros tipo:

Código:
INSERT INTO tabla (campo1, campo2) VALUES ('val1', 'stringdeIds');
esto generaria un registro por cada valor del String Id, comparten el mismo val1 todos.

De antemano GRACIAS!!!
__________________
Artis
  #2 (permalink)  
Antiguo 09/01/2010, 16:55
Avatar de valenti_92  
Fecha de Ingreso: enero-2010
Ubicación: Manresa
Mensajes: 126
Antigüedad: 14 años, 11 meses
Puntos: 4
Respuesta: Insert masivo

Hazlo con un for.
  #3 (permalink)  
Antiguo 09/01/2010, 20:02
Avatar de David
Moderador
 
Fecha de Ingreso: abril-2005
Ubicación: In this planet
Mensajes: 15.720
Antigüedad: 19 años, 8 meses
Puntos: 839
Respuesta: Insert masivo

No se entiende muy bien, si te refieres a insertar varios registros, la sintaxis es:
Código MySQL:
Ver original
  1. INSERT INTO tabla (campo1, campo2) VALUES ('val1', 1), ('val1', 2), ('val1', 3);
__________________
Por favor, antes de preguntar, revisa la Guía para realizar preguntas.
  #4 (permalink)  
Antiguo 09/01/2010, 20:17
Avatar de Sensorium  
Fecha de Ingreso: julio-2007
Ubicación: Montevideo-Uruguay
Mensajes: 207
Antigüedad: 17 años, 5 meses
Puntos: 7
Respuesta: Insert masivo

Cita:
Iniciado por David Ver Mensaje
No se entiende muy bien, si te refieres a insertar varios registros, la sintaxis es:
Código MySQL:
Ver original
  1. INSERT INTO tabla (campo1, campo2) VALUES ('val1', 1), ('val1', 2), ('val1', 3);

David, no conocia la sintaxis y busque pero no me salia, gracias!! esta manera funcionó
__________________
Artis
  #5 (permalink)  
Antiguo 09/01/2010, 20: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: 17 años
Puntos: 2658
Respuesta: Insert masivo

El mysqldump usa INSERTs masivos al crear el script de backup de hasta 15.000 registros para optimizar la carga.
Yo usualmente uso entre 50 y 1000, dependiendo de la tarea en cuestión, y la performance mejora muchísimo.
__________________
¿A quién le enseñan sus aciertos?, si yo aprendo de mis errores constantemente...
"El problema es la interfase silla-teclado." (Gillermo Luque)

Etiquetas: insert, masivo
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 17:39.