Foros del Web » Programando para Internet » PHP »

[SOLUCIONADO] Problemas con insert into

Estas en el tema de Problemas con insert into en el foro de PHP en Foros del Web. Amigos tengo un formulario que me guarda valores numericos en my db, no se si es posible, pero quiero hacer un procedimiento almacenado que me ...
  #1 (permalink)  
Antiguo 09/02/2015, 14:15
 
Fecha de Ingreso: agosto-2013
Ubicación: San Pedro Sula
Mensajes: 12
Antigüedad: 10 años, 7 meses
Puntos: 0
Sonrisa Problemas con insert into

Amigos tengo un formulario que me guarda valores numericos en my db, no se si es posible, pero quiero hacer un procedimiento almacenado que me sume todos esos valores y que al final me lo guarde en un campo que se llama 'calificacion'

Este es el código que tengo:

insert into wonderlic (calificacion)
values (r1+r2+r3+r4+r5+r6+r7+r8+r9+r10+r11+r12+r13+r14+r1 5+r16+r17+r18+r19+r20+r21+r22+r23+r24+r25+r26+r27+ r28+r29+r30+r31+r32+r33+r34+r35+r36+r37+r38+r39+r4 0+r41+r42+r43+r44+r45+r46+r47+r48+r49+r50)



y me aparece este error:

(insert into wonderlic (calificacion)
values (r1+r2+r3+r4+r5+r6+r7+r8+r9+r10+r11+r12+r13+r14+r1 5+r16+r17+r18+r19+r20+r21+r22+r23+r24+r25+r26+r27+ r28+r29+r30+r31+r32+r33+r34+r35+r36+r37+r38+r39+r4 0+r41+r42+r43+r44+r45+r46+r47+r48+r49+r50) as total, if((r1+r2+r3+r4+r5+r6+r7+r8+r9+r10+r11+r12+r13+r14 +r15+r16+r17+r18+r19+r20+r21+r22+r23+r24+r25+r26+r 27+r28+r29+r30+r31+r32+r33+r34+r35+r36+r37+r38+r39 +r40+r41+r42+r43+r44+r45+r46+r47+r48+r49+r50) as total;
/* Error de SQL (1064): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'as total, if((r1+r2+r3+r4+r5+r6+r7+r8+r9+r10+r11+r12+r13+r14 +r15+r16+r17+r18+r19' at line 2 */
/* Affected rows: 0 Filas encontradas: 0 Advertencias: 0 Duración para 0 of 1 query: 0.000 sec. */)

Alguien que me auxilie, ya que no soy experto en mysql. Gracias
  #2 (permalink)  
Antiguo 09/02/2015, 14:29
Colaborador
 
Fecha de Ingreso: enero-2007
Ubicación: México
Mensajes: 2.097
Antigüedad: 17 años, 3 meses
Puntos: 447
Respuesta: Problemas con insert into

Hola rafaelrecarte:

El error que mencionas no corresponde al código SQL que dices que estás probando... de entrada hay varios detalles:

Cita:
Este es el código que tengo:

insert into wonderlic (calificacion)
values (r1+r2+r3+r4+r5+r6+r7+r8+r9+r10+r11+r12+r13+r14+r1 5+r16+r17+r18+r19+r20+r21+r22+r23+r24+r25+r26+r27+ r28+r29+r30+r31+r32+r33+r34+r35+r36+r37+r38+r39+r4 0+r41+r42+r43+r44+r45+r46+r47+r48+r49+r50)
Tienes un problema con el valor r40, ya que estás colocando un espacio, por lo tanto el campo que reconoce es el r4, mientras que el 0 NO ES NINGÚN ELEMENTO:


Código:
+r39+r4 0+r41
Cita:
Error de SQL (1064): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'as total,
Tal pareciera que estás intentando hacer un INSERT INTO dentro de un SELECT... no sé qué es lo que pretendes hacer con eso...

Postéa la sentencia SQL completa y dinos exactamente qué es lo que intentas hacer...

Si estás programando con algún lenguaje de programación, es mejor que hagas primeramente la suma y almacenes el valor en una variable y entonces y utilizar dicha variable en la sentencia SQL

Saludos
Leo.
  #3 (permalink)  
Antiguo 09/02/2015, 14:31
 
Fecha de Ingreso: mayo-2013
Mensajes: 171
Antigüedad: 10 años, 11 meses
Puntos: 4
Respuesta: Problemas con insert into

Se supone que quieres sumar cada variable 'r' y que la suma total se inserte en un campo de la base de datos, no?

Código PHP:
$total = ($r1 $r2 + ...$rN);

$sql="INSERT INTO Tabla (Calificacion) VALUES ('$total')"
Revisa el manual para ver como se insertan variables en una base de datos.
  #4 (permalink)  
Antiguo 09/02/2015, 14:42
 
Fecha de Ingreso: agosto-2013
Ubicación: San Pedro Sula
Mensajes: 12
Antigüedad: 10 años, 7 meses
Puntos: 0
Respuesta: Problemas con insert into

el r4 0, debe ser un error al copiar, revise el código y está pegado r40

Probé con el formato en PHP: $total = ($r1+$r2+$r3+$r4+$r5+$r6+$r7+$r8+$r9+$r10+$r11+$r1 2+$r13+$r14+$r15+$r16+$r17+$r18+$r19+$r20+$r21+$r2 2+$r23+$r24+$r25+$r26+$r27+$r28+$r29+$r30+$r31+$r3 2+$r33+$r34+$r35+$r36+$r37+$r38+$r39+$r40+$r41+$r4 2+$r43+$r44+$r45+$r46+$r47+$r48+$r49+$r50);
$sql="INSERT INTO wonderlic (Calificacion) VALUES ('$total')";

Y me ha funcionado muy bien

Pero solo para salir de dudas, esta suma se podía hacer con un evento o un procedimiento almacenado en mysql?

Gracias amigos por su ayuda.
  #5 (permalink)  
Antiguo 09/02/2015, 16:35
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, 5 meses
Puntos: 2658
Respuesta: Problemas con insert into

Entonces tu problema era OFF TOPIC en MySQL.
Estabas cometiendo errores de programación, y los temas de programación no se tratan en los foros de Bases de Datos.
Por favor, leer las reglas de cada foro antes de publicar, evitarás perdidas de tiempo.

Movido a PHP.
__________________
¿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: campo, insert, mysql, 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 04:33.