Ver Mensaje Individual
  #5  
Antiguo 19-10-2017
arturoio arturoio is offline
Miembro
NULL
 
Registrado: oct 2017
Posts: 17
Reputación: 0
arturoio Va por buen camino
Código SQL [-]
Delimiter $$
DROP PROCEDURE IF EXISTS insertaPaciente;
    CREATE PROCEDURE insertaPaciente (identificador VARCHAR(12), nombre VARCHAR(45), apellidoP VARCHAR(45), apellidoM VARCHAR(45), fecha DATE, telefono VARCHAR(15), celular VARCHAR(15),
    pais INT, estado int, ciudad int, colonia int, calle int, numero VARCHAR(7), profesion VARCHAR(45), estadoC VARCHAR(15), escolaridad VARCHAR(45), sexo int, sangre VARCHAR(2), correo VARCHAR(70)) ##Se definen los parametros que necesitara el SP
    
    BEGIN #Inicia las intrucciones para el SP
    DECLARE direccion INT; #Declaramos una variable y a continuación comprobaremos si ya existe un registro igual
    SET direccion = (Select count(cl08_Id) from cl08 where cl14_Id = pais and cl13_Id = estado and cl12_Id = ciudad and cl09_Id = calle and cl11_Id = colonia and cl08_Numero = numero);
    
    IF direccion = 0 # a traves de este if decidimos si se inserta un nuevo registro o se utiliza el que ya existe
    THEN
        INSERT INTO cl08 values (null,calle,colonia,numero,ciudad,estado,pais);
    END IF;    
    
    SET direccion = (Select cl08_Id from cl08 where cl14_Id = pais and cl13_Id = estado and cl12_Id = ciudad and cl09_Id = calle and cl11_Id = colonia and cl08_Numero = numero);
    insert into cl00 values (null,identificador, nombre, apellidoP, apellidoM, fecha, telefono, celular, profesion, estadoC,escolaridad, sexo, sangre, correo, direccion); # Hacemos nuestra inserción 

END $$

Este es el SP. Desde el gestor de la Base de datos funciona sin problemas
Responder Con Cita