Ver Mensaje Individual
  #5 (permalink)  
Antiguo 17/05/2015, 18:11
lumt90
 
Fecha de Ingreso: abril-2015
Mensajes: 11
Antigüedad: 9 años
Puntos: 0
Respuesta: como envio 6 formularios por session a mysql por medio de un transac

este es el transac que tengo esta bueno xq lo he probado directament con el mysql


Código MySQL:
Ver original
  1. CREATE DEFINER=`root`@`localhost` PROCEDURE `registro`(
  2.  
  3. in p_id_persona int(11),
  4. in p_nombre varchar(40),
  5. in p_apellido varchar(40),
  6. in p_ncedula varchar(16),
  7. in p_genero varchar(10),
  8. in p_fecha_nac date,
  9. in p_estado_civil varchar(20),
  10. in p_telefono int(11),
  11. in p_direccion varchar(160),
  12. in p_email varchar(60),
  13.  
  14. in p_id_postulante int(11),
  15. in p_carrera_universitaria varchar(30),
  16. in p_grado_estudio varchar(30),
  17. in p_ultimo_estudio varchar(30),
  18. in p_especialidad varchar(30),
  19. in p_area_de_interes varchar(30),
  20. in p_otra_area_interes varchar(30),
  21. in p_fecha_postulante date,
  22.  
  23.  
  24. in p_id_referencia int(11),
  25. in p_nombre_referencia varchar(30),
  26. in p_apellido_referencia varchar(30),
  27. in p_telefono_referencia char(9),
  28. in p_email_referencia varchar(50),
  29. in p_cargo_desempe varchar(30),
  30. in p_nombre_empresa varchar(40),
  31.  
  32.  
  33. in p_id_refe_empresa int(11),
  34. in pm_nombre_empresa varchar(40),
  35. in p_telefono_empresa char(9),
  36. in p_email_empresa varchar(60),
  37. in p_nombre_ref varchar(30),
  38.  
  39.  
  40. in p_id_experiencia_lab int(11),
  41. in p_Area varchar(30),
  42. in p_cargo varchar(30),
  43. in p_salario float,
  44. in p_empresa varchar(40),
  45. in p_fechaentrada date,
  46. in p_fechasalida date,
  47. in p_motivo_salida varchar(50),
  48. in p_estado_laboral varchar(30),
  49.  
  50.  
  51. in p_id_otra_info int(11),
  52. in p_disponibilidad_de_horario varchar(30),
  53. in p_vehiculo_propio varchar(5),
  54. in p_tipo_vehiculo varchar(30),
  55. in p_inf_adicional varchar(100)
  56.  
  57. )
  58.  
  59.  
  60.  
  61.  
  62. /*Handler para error SQL*/
  63. DECLARE EXIT HANDLER FOR SQLEXCEPTION
  64. SELECT 1 as error;
  65. END;
  66.  
  67. /*Handler para error SQL*/
  68. DECLARE EXIT HANDLER FOR SQLWARNING
  69. SELECT 1 as error;
  70. END;
  71.  
  72. /*Inicia transaccion*/
  73.  
  74. /*Primer INSERT datos persona*/  
  75. insert into persona (id_persona, nombre, apellido, ncedula, genero, fecha_nac, estado_civil, telefono, direccion, email)
  76. values (p_id_persona, p_nombre, p_apellido, p_ncedula, p_genero, p_fecha_nac, p_estado_civil, p_telefono, p_direccion, p_email);
  77.  
  78.  
  79. /*segundo INSERT datos postulante*/
  80. insert into postulante (id_postulante, carrera_universitaria, grado_estudio, ultimo_estudio, especialidad , area_de_interes , otra_area_interes , fecha_postulante , id_persona)
  81. values (p_id_postulante, p_carrera_universitaria, p_grado_estudio , p_ultimo_estudio, p_especialidad, p_area_de_interes, p_otra_area_interes, p_fecha_postulante, p_id_persona);
  82.  
  83. /*tercero INSERT datos referencia */
  84. insert into referencia_persona (id_referencia, nombre_referencia, apellido_referencia, telefono_referencia, email_referencia, cargo_desempe, nombre_empresa, id_postulante)
  85. values (p_id_referencia, p_nombre_referencia, p_apellido_referencia, p_telefono_referencia, p_email_referencia, p_cargo_desempe, p_nombre_empresa, p_id_postulante);
  86.  
  87.  
  88. /*CUARTO INSERT datos referencia empresa */
  89. insert into referencia_empresa(id_refe_empresa,nombre_empresa,telefono_empresa,email_empresa,nombre_ref,id_postulante)
  90. values(p_id_refe_empresa,pm_nombre_empresa,p_telefono_empresa,p_email_empresa,p_nombre_ref,p_id_postulante);
  91.  
  92.  
  93. /*quinto INSERT datos experiencia */
  94. insert into experiencia_laboral(id_experiencia_lab,Area,cargo,salario,empresa,fechaentrada,fechasalida,motivo_salida,estado_laboral,id_postulante)
  95. values(p_id_experiencia_lab,p_Area,p_cargo,p_salario,p_empresa,p_fechaentrada,p_fechasalida,p_motivo_salida,p_estado_laboral,p_id_postulante);
  96.  
  97.  
  98. /*sexto INSERT datos otra info */
  99. insert into otra_informacion(id_otra_info,disponibilidad_de_horario,vehiculo_propio,tipo_vehiculo,inf_adicional,id_postulante)
  100. values(p_id_otra_info,p_disponibilidad_de_horario,p_vehiculo_propio,p_tipo_vehiculo,p_inf_adicional,p_id_postulante);
  101.        
  102.  
  103. /*Fin de transaccion*/
  104.  
  105.  
  106. /*Mandamos 0 si todo salio bien*/
  107. SELECT 0 as error;
  108.  


les agradeciria mucisimo que me ayuden