Доброго времени суток.
Есть таблица EventData
c полями deviceID varchar(32)
timestamp int(10)
и много других
Данные в таблицу записываются через файл вроде как на java, вот код в нём:
<entry key='database.driver'>com.mysql.jdbc.Driver</entry>
<entry key='database.url'>jdbc:mysql://localhost:3306/[DATABASE]?allowMultiQueries=true</entry>
<entry key='database.user'>[USER]</entry>
<entry key='database.password'>[PASSWORD]</entry>
<entry key='database.selectDevice'>
SELECT imeiNumber AS id, imeiNumber AS imei FROM Device WHERE imeiNumber <> '';
</entry>
<entry key='database.insertPosition'>
START TRANSACTION;
UPDATE Device SET lastValidLatitude = :latitude, lastValidLongitude = :longitude, lastGPSTimestamp = UNIX_TIMESTAMP(:time), lastUpdateTime = UNIX_TIMESTAMP(NOW()) WHERE imeiNumber = :device_id;
SELECT @accountID := accountID, @deviceID := deviceID FROM Device WHERE imeiNumber = :device_id;
INSERT INTO EventData (accountID, deviceID, timestamp, statusCode, latitude, longitude, speedKPH, heading, altitude, rawData, creationTime, address)
VALUES (@accountID, @deviceID, UNIX_TIMESTAMP(:time), 0, :latitude, :longitude, :speed, :course, :altitude, '', UNIX_TIMESTAMP(NOW()), :address);
Проблема в том что не работает ни один триггер даже самый простейший
CREATE TRIGGER test AFTER INSERT ON EventData FOR EACH ROW SET @sum=@sum+1;
Если я добавляю данные вручную через консоль командой INSERT то триггер работает
sum считает колличество добавлений, а вот когда данные поступают через файл то sum так и остаётся 0
Пробывал в триггер вставлять DEFINER=root@localhost не помогло.
Подскажите кто знает в какую сторону хоть копать.