Test Foro de elhacker.net SMF 2.1

Programación => Desarrollo Web => Bases de Datos => Mensaje iniciado por: geshiro en 30 Abril 2016, 01:44 AM

Título: problema en trigger update status
Publicado por: geshiro en 30 Abril 2016, 01:44 AM
como puedo hacer para que no me de error con esta logica if stock = 0 then status update table set colum = 0           

Código (sql) [Seleccionar]

    DELIMITER $$

USE `store`$$

DROP TRIGGER /*!50032 IF EXISTS */ `updateStatus`$$

CREATE
    /*!50017 DEFINER = 'root'@'localhost' */
    TRIGGER `updateStatus` AFTER UPDATE ON `product`
    FOR EACH ROW BEGIN
SELECT stock,CASE WHEN stock = 0 THEN UPDATE product SET STATUS = 0;
    END;
$$

DELIMITER ;
Título: Re: problema en trigger update status
Publicado por: + 1 Oculto(s) en 30 Abril 2016, 02:07 AM
si no me equivoco, en serio que no estoy muy seguro pero tendrias que crear una funcion y dentro el triger
Título: Re: problema en trigger update status
Publicado por: geshiro en 30 Abril 2016, 04:10 AM
para hacer lo que ocupo ? se puede hacer algo mas optimizado?
Título: Re: problema en trigger update status
Publicado por: + 1 Oculto(s) en 30 Abril 2016, 04:36 AM
cuando ocurre alguna accion entonces se activaria la funcion que te digo

pero como lo hiciste se activa igual luego de una accion?
Título: Re: problema en trigger update status
Publicado por: geshiro en 30 Abril 2016, 06:25 AM
que le faltaria a esta sentencia para usar el case,then ,when o en que parte del linea puede ser declarado el then o case sin fallar la sintaxis
Código (sql) [Seleccionar]

   SELECT product,stock,IF(stock != 0,'active','inactive') AS STATUS FROM product