Ver Mensaje Individual
  #1 (permalink)  
Antiguo 19/11/2009, 13:36
climax2006
 
Fecha de Ingreso: abril-2006
Mensajes: 240
Antigüedad: 20 años, 6 meses
Puntos: 1
verificar si existe un registro atravez de un procedimiento alamcenado mysql

Hola:
mi consulta es como puedo hacer para ver si existe un registro atravez de un procedimiento, osea, si existe no lo inserte y a la vez envie algun valor para tomarlo desde el php y decir que ya existe, de lo contratio inserte

Código PHP:
DELIMITER $$

DROP PROCEDURE IF EXISTS `ley18450cnr2`.`CNRP_RUBRO`$$

CREATE DEFINER=`svilches`@`10.1.1.231` PROCEDURE `CNRP_RUBRO`(
    
IN txt VARCHAR(255), 
    
IN vigencia TINYINT(1),    
    
IN id INT(11),
    
IN opcion TINYINT(1))
BEGIN
DECLARE resultado INT(11);
IF 
opcion = 1 THEN
    
/* Compruebo que no exista el rubro*/
    
SELECT descripcion FROM t_tiporubro where descripcion = txt INTO resultado;
    IF 
resultado IS NULL THEN
        INSERT INTO t_tiporubro
(descripcion, vigente) VALUES (txt, vigencia);
    ELSE
        
SELECT ERRORS; //aca no se que colocar
    
END IF;
ELSEIF 
opcion = 3 THEN    
    
/* Actualiza el rubro*/
    
UPDATE t_tiporubro SET descripcion = txt, vigente = vigencia WHERE idtiporubro = id;
ELSEIF 
opcion = 4 THEN    
    
/* Habilito el rubro*/
    
UPDATE t_tiporubro SET vigente = 1 WHERE idtiporubro = id;
ELSEIF 
opcion = 5 THEN    
    
/* inhabilito el rubro*/
    
UPDATE t_tiporubro SET vigente = 0 WHERE idtiporubro = id;
ELSE
    
SELECT FALSE;
END IF;
END$$ 
y en el php

Código PHP:
$sqll = 'CALL CNRP_RUBRO("'.trim($_GET['txt']).'", "'.$_GET['vigencia'].'", "", "'.$_GET['num'].'");';
            
$base->Execute($sqll); 
no se como de acuerdo al valor que entregue el mysql hacer el if..