programing

업데이트 쿼리에서 최대 절전 모드를 사용하도록 강제하는 방법은 무엇입니까?

linuxpc 2023. 8. 24. 21:51
반응형

업데이트 쿼리에서 최대 절전 모드를 사용하도록 강제하는 방법은 무엇입니까?

최대 절전 모드를 사용하여 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그런 다음 첫 번째 쿼리는 업데이트를 위해 전체 테이블을 잠그고 두 번째 쿼리는 업데이트를 위해 단일 행만 잠급니다.

행을 하나만 잠그고 싶기 때문에 두 번째 쿼리를 사용해야 합니다.

가셔도 됩니다.NamedQueriesHibernate에서 접근합니다. 예:

 //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

반응형