Vous ne pouvez exécuter qu'une seule instruction avec un seul préparéStatement. Vous devez diviser le sql en deux insert into distincts ... séquences.
Aussi
INSERT INTO DISTRIBUTES (PEERID, FILEID) VALUES (" + peerID + ",LAST_INSERT_ID());";
ne ressemble pas à l'utilisation d'un readyStatment - il a un peerID codé en dur au lieu de l'espace réservé ?