Savepoints няма да направи това, което искате. Когато се върнете към точка за запис, всичко след тази точка за запис се връща назад, независимо дали са създадени по-късни точки за запис.
Мислете за точките за запис като "стек". Не можете да извадите нещо от средата на купчината, трябва да премахнете всичко до слоя, който искате.
Вероятно търсите автономни транзакции. Нито една от базите данни, които искате да използвате, не ги поддържа. В PostgreSQL можете да заобиколите това, като използвате модула dblink, за да направите нова връзка с базата данни и да работите с нея; вижте http://www.postgresql.org/docs/current/static/ dblink.html . Не знам какви решения предлагат MySQL или SQLite, но Google ще ви помогне сега, когато знаете термина, който търсите.
Препоръчвам ви да намерите начин да заобиколите това изискване за дизайн на приложението, ако е възможно. Накарайте вашето приложение да използва две връзки към бази данни и две транзакции, за да направи това, от което се нуждаете, като се погрижите за координирането на двете според изискванията.