toglierei il do-while (lascerei i controlli e basta, con una variabile-flag boolean) e metterei la query in fondo (da eseguire solo se il flag è su true)