반응형
업데이트 쿼리에서 최대 절전 모드를 사용하도록 강제하는 방법은 무엇입니까?
최대 절전 모드를 사용하여 Raw by Composite 기본 키를 업데이트하려고 합니다.
최대 절전 모드에서는 이러한 업데이트에 다음 스타일을 사용합니다.
update mytable set mycolumn=321 where (left_pk, right_pk) = (123, 456);
다음 스타일을 사용하도록 강제로 최대 절전 모드를 설정할 수 있습니까?
update mytable set mycolumn=321 where left_pk = 123 and right_pk = 456;
두 쿼리 모두 작동하지만(적어도 MariaDB에서는) 큰 차이가 있습니다.
사용할 경우repeatable read
그런 다음 첫 번째 쿼리는 업데이트를 위해 전체 테이블을 잠그고 두 번째 쿼리는 업데이트를 위해 단일 행만 잠급니다.
행을 하나만 잠그고 싶기 때문에 두 번째 쿼리를 사용해야 합니다.
가셔도 됩니다.NamedQueries
Hibernate에서 접근합니다. 예:
//Create Query
@NamedQueries({ @NamedQuery(name = " YOUR QUERY NAME",
query = "from DeptEmployee where department = :department and emp = :emp") })
// set multiple parameters
query.setParameter("department",department)
.setParameter("emp", emp)
한 번 해보세요.
언급URL : https://stackoverflow.com/questions/54832038/how-to-force-hibernate-use-and-in-update-query
반응형
'programing' 카테고리의 다른 글
동의어가 이미 존재하는 경우 동의어를 만들지 않는지 확인하려면 어떻게 해야 합니까? (0) | 2023.08.24 |
---|---|
다른 테이블을 참조하여 제약 조건을 확인 (0) | 2023.08.24 |
엑셀 vba를 이용한 유튜브 자막 다운로드 (0) | 2023.08.24 |
DataTable을 클래스 Object로 변환하는 방법은 무엇입니까? (0) | 2023.08.24 |
스프링 부트json 본문의 일부로 멀티파트 파일 업로드 (0) | 2023.08.24 |