Para responder diretamente à sua pergunta, dobre as aspas.
insert into person_details values (1, 'D''souza');
Mas prefiro parametrizar a consulta usando
PreparedStatement
. Aqui estão os PROs:
- evitar injeção de SQL
- não precisa usar aspas simples.
exemplo,
String str = "insert into person_details values (?, ?)";
query = con.prepareStatement(str);
query.setInt(1, 1);
query.setString(2, "D'souza");
query.executeUpdate();