Jeśli chodzi o vector, to pop_back() usuwa ostatni obiekt, więc może bardziej odpowiednim sposobem dla ciebie mogłoby być vector.erase(vector.begin()+numerElementu). Nie wiem czemu obiekt miałby wariować, wtedy po prostu znika i tyle.
Ja się na SQL nie znam, ale po co ci to? Mogę ci powiedzieć, że za pomocą SFML-a tego raczej się nie da zrobić (przynajmniej na tyle przeczytałem tutoriale).