Триггер SQL влияет только на первую запись - PullRequest
0 голосов
/ 05 июня 2019

У меня есть триггер с именем movimentacoes, этот триггер должен увеличить столбец integralizadas в таблице cooperados при добавлении новой записи в таблицу mov. На самом деле это так, но только для первой записи в cooperados таблице

вот мой триггер

DELIMITER $$

CREATE TRIGGER movimentacoes AFTER INSERT ON mov
FOR EACH ROW
BEGIN
    UPDATE cooperados c
        SET integralizadas = c.integralizadas + new.valor
    WHERE c.id = new.id_coop;


END;

$$

DELIMITER ;

Стол кооператоров

id            | bigint(20) PRI  NULL    auto_increment
created_at    | timestamp       NULL    
updated_at    | timestamp       NULL    
nameCoop      | varchar(255)    NULL    
numCoop       | int(11)         NULL    
cpfCoop       | varchar(11)     NULL    
dtCad         | date            NULL    
dtDem         | date            NULL    
description   | text            NULL    
subscritas    | decimal(6,2)    NULL    
integralizadas| decimal(6,2)    NULL    
aintegralizar | decimal(6,2)    NULL    
status        | enum('ativo','inativo')

стол мов

idMov       bigint(20) PRI  NULL    auto_increment
created_at  timestamp       NULL    
updated_at  timestamp       NULL    
id_coop     bigint(20)      NULL    
valor       decimal(6,2)    NULL    

триггер работает только тогда, когда cooperado.id равен 1

1 Ответ

0 голосов
/ 05 июня 2019

Итак, я нашел ответ, так как мой столбец integralizadas был нулевым, мой триггер не мог повлиять на него, теперь моя таблица cooperados выглядит так:

id            | bigint(20) PRI  NULL    auto_increment
created_at    | timestamp       NULL    
updated_at    | timestamp       NULL    
nameCoop      | varchar(255)    NULL    
numCoop       | int(11)         NULL    
cpfCoop       | varchar(11)     NULL    
dtCad         | date            NULL    
dtDem         | date            NULL    
description   | text            NULL    
subscritas    | decimal(6,2)    NULL    
integralizadas| decimal(6,2)    NOT NULL <--    
aintegralizar | decimal(6,2)    NULL    
status        | enum('ativo','inativo')

ты каждый

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...