Spróbuj użyć entityManager.createNativeQuery()
. Nie możesz użyć createQuery()
ponieważ tabela powinna być obecna jako jednostka w kodzie Java. Ponadto musisz użyć dokładnego formatu SQL.
String query = "DELETE FROM USER_PHONE WHERE user_id=?1";
try{
Query q = entityManager.createNativeQuery(query);
q.setParameter(1,id);
q.executeUpdate();
System.out.println(System.currentTimeMillis() + " DELETE User_Phone: userId " + id + " ==> deleted");
} catch(Exception e){
e.printStackTrace();
return false;
}`
Najpierw usuń wiersz z USER_PHONE
(za pomocą createNativeQuery()
), a następnie od User
(za pomocą createQuery()
)