2017-03-13 1 views
0

다른 데이터베이스에 대해 jOOQ에서 데이터베이스 제약 조건을 사용할 수 없게 만드는 방법이 있는지 알고 싶습니다. 예를 들어, MySQL과 PostgreSQL을에 외래 키 제약 조건을 비활성화하는 것은 꽤 많이 다릅니다jOOQ : 제약 조건을 비활성화하는 데이터베이스에 독립적 인 방법

MySQL의

SET FOREIGN_KEY_CHECKS=0;

PostgreSQL을

실제로 너무 확실하지,하지만 아마 해제 트리거를 포함 할 것이다.

답변

0

이러한 종류의 기능은 매우 벤더에 따라 다르며 이와 같은 기능을 표준화하는 것은 어렵습니다.

는하지만 두 데이터베이스에 지원을 찾고 있기 때문에, 당신은 자신의 롤 수 :

void disableForeignKeys(Configuration configuration) { 
    switch (configuration.family()) { 
     case MYSQL: 
      DSL.using(configuration).execute("set foreign_key_checks=0"); 
      break; 
     case POSTGRES: 
      ... 
    } 
} 
+0

안녕 루카스를, 내가 많이 생각했다. 명확히 해 주셔서 감사합니다. –

관련 문제