невозможно обновить запись в запущенной таблице при обнаружении новой записи в триггере mysql - PullRequest
0 голосов
/ 04 мая 2020

невозможно записать триггер для вставки строки, если imei не найден в сработавшей таблице, если он найден, поэтому он должен обновить запись.

ошибка запроса - потеря соединения с моим sql сервером.

  DELIMITER $$
    create TRIGGER update_livedata4
    AFTER INSERT ON `Rawdata`
    FOR EACH ROW
    begin 
     IF Livedata.IMEI <> Rawdata.IMEI THEN
           INSERT INTO Livedata(IMEI,updatedTime,latitude,longitude,speed,ignition,fuel,altitude,battery,runHrs,alert,distance) VALUES (NEW.IMEI,NEW.updatedTime, NEW.latitude,NEW. longitude,NEW.speed,NEW.ignition,NEW.fuel,NEW.altitude,NEW.battery,NEW.runHrs,NEW.alert,NEW.distance);
        END IF;
    UPDATE Livedata SET IMEI = new.IMEI,updatedTime=new.updatedTime,latitude= NEW.latitude,longitude=NEW. longitude,speed=NEW.speed,ignition=NEW.ignition,fuel=NEW.fuel,altitude=NEW.altitude,battery=NEW.battery,runHrs=NEW.runHrs,alert=NEW.alert,distance=NEW.distance;
    END$$
    DELIMITER ;

1 Ответ

0 голосов
/ 04 мая 2020

Похоже, что вы пропустили условие where в написанном вами обновлении, которое, в свою очередь, занимает больше, чем net тайм-аут чтения ....!

Готовы ли вы обновить все записи?

Если это так, то увеличение времени ожидания поможет ...

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