Hola buen día, estoy utilizando cursores pero tengo un problema resulta que mi cursor debería obtener 2 datos pero esta mostrando 3 no se porque, les expongo las cosas con los códigos SQL que tengo:
Tabla asignacion_video (es una tabla referencial)
Actualmente no cuenta con un registro, cuando ejecuto mi SP debería de ser llenada, pero repite el ultimo registro.
SP Estructura:
Código MySQL:
Ver originalFOR
asignacion_colonia.id_usuario
asignacion_colonia
INNER JOIN cat_estados
AS cae
ON asignacion_colonia.id_catestado
= cae.id_estados
cae.asentamiento
LIKE parametro
; OPEN ordernumbers;
FETCH ordernumbers
INTO o
; CALL save_asignacionvideo
(a
,o
); CLOSE ordernumbers;
El resultado que se almacena en el cursor es el siguiente: 1 y 3
+------------+
| id_usuario |
+------------+
| 1 |
| 3 |
+------------+
2 rows in set
Entonces cuando ejecuto el procedimiento mando a llamar un insert en otro procedimiento que es el CALL save_asignacionvideo(a,o);
el cual debería de ingresar en la tabla lo siguiente
+--------------------+-----------+--------------------+
| id_asignacionvideo | id_ticket | id_oficialasignado |
+--------------------+-----------+--------------------+
| 1 | 1 | 1 |
| 2 | 1 | 3 |
+--------------------+-----------+--------------------+
Pero esta haciendo lo siguiente
+--------------------+-----------+--------------------+
| id_asignacionvideo | id_ticket | id_oficialasignado |
+--------------------+-----------+--------------------+
| 1 | 1 | 1 |
| 2 | 1 | 3 |
| 3 | 1 | 3 |
+--------------------+-----------+--------------------+
3 rows in set
lo cual no es lo correcto, espero y me puedan ayudar.
Saludos.