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

[SOLUCIONADO] Diferentes formas de hacer insert

Estas en el tema de Diferentes formas de hacer insert en el foro de Mysql en Foros del Web. Cuando leo un archivo csv y los registros los quiero insertar en una tabla uso esto (dentro de un bucle while): Código PHP: "INSERT INTO tabla_destino (cod, nom, sueldo, fecha) VALUES ($cod, $nom, $sueldo, $fecha)" ...
  #1 (permalink)  
Antiguo 25/03/2017, 15:44
Avatar de bandolera  
Fecha de Ingreso: abril-2009
Mensajes: 613
Antigüedad: 14 años, 11 meses
Puntos: 7
Pregunta Diferentes formas de hacer insert

Cuando leo un archivo csv y los registros los quiero insertar en una tabla uso esto (dentro de un bucle while):
Código PHP:
"INSERT INTO tabla_destino (cod, nom, sueldo, fecha)
VALUES ($cod, $nom, $sueldo, $fecha)"
); 
Y si tengo datos de una tabla que necesito pasar a otra utilizo esto:
Código PHP:
$sql "INSERT INTO tabla_destino (cod, nom, sueldo, fecha)
SELECT cod, nom, sueldo, fecha
FROM tabla_origen"

En el primer caso si la tabla_destino tiene más campos pero no los declaro en el insert igual realiza el insert.
En el segundo caso si la tabla_destino tiene más campos, igual los inserta.

Por qué es diferente si en ambos casos es un insert? o estoy omitiendo algo?
Espero comentarios y/o sugerencias. Gracias.
__________________
Todos somos iguales. NO! a la violencia de género.
  #2 (permalink)  
Antiguo 25/03/2017, 23:39
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: Diferentes formas de hacer insert

No es un problema de PHP, sino de SQL.
Simplemente las tablas destino tienen el resto de las columnas declaradas como nulables, es decir que pueden contener NULL.
Si fuesen NOT NULL, el INSERT simplemente no funcionaría. Te dispararía un error a nivel SQL.
__________________
¿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: formas, insert, php, registro, select, sql
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 08:49.