У меня похожая проблема двусторонней синхронизации между БД Android sqlite и центральной БД MySql.Проблема действительно возникает, когда вставки сделаны, потому что она допускает возможность реплицированных первичных ключей.
Некоторое время назад я создавал систему, в которой использовались аппаратные и основанные на времени первичные ключи GUID вместо простых монотонно увеличивающихся первичных ключей.Теория заключается в том, что если новые записи будут вставлены либо в трубку с помощью sqlite, либо на центральный сервер с использованием mysql, ключи никогда не будут конфликтовать, потому что они уникальны во всем мире.
К сожалению, это означает, что вы занимаетесь бизнесом по управлению первичными ключами, а не просто выбираете автоматический, который поставляется с обоими механизмами БД.Но в теории этот подход позволяет легко объединять данные из множества разных телефонов в центральной базе данных и перераспределять их обратно на все телефоны.Я рассматриваю этот подход для моей проблемы с Android, хотя все еще надеюсь найти решение, уже разработанное там.