내 첫 번째 생각은 이것을 보는 이유는 무엇입니까? 이것은 조금 냄새가났다. 마치 우유가 며칠 만료 된 후에 우유처럼.
이 두 seq가 같은 값을 유지해야하는 시나리오는 무엇입니까? 무시
당신이 시도해 볼 수도 있습니다 내가 내 뱃속에 얻고 감정 "이 조금 이상한 것 같다"
가 삽입에이 작업을 수행 table_a에 트리거를 넣어. - a의 값으로 b seq를 설정하십시오.
select setval('table_b_seq',currval('table_a_seq'));
이 접근 방식의 문제는 다른 table_a_seq를 증가 될 table_a_seq 값과 아무것도 변경됩니다 table_a으로 만 삽입 가정이다. 당신이 그걸로 살아갈 수 있다면, 그것은 정말로 hackish 한 방식으로 작동 할 것입니다. 나는 그것이 제 전화 인 경우 생산에 공개하지 않을 것입니다.
정말 필요한 경우 함수를 사용하여 table_a_seq를 증가시키는 단일 인터페이스를보다 강력하게 만들 수 있습니다. 이 함수를 통해서만 table_a_seq를 조작 할 수 있습니다. 그런 식으로 table_a_seq를 증가시킬 수있는 인터페이스가 하나 있습니다. 또한이 함수에 select setval('table_b_seq',currval('table_a_seq'));
을 넣어야합니다. 그런 식으로 table_b_seq는 항상 table_a_seq와 같게 설정됩니다. 즉, 사용자에게 table_a_seq에 대한 권한을 제거하고 새 기능에 대한 권한 부여 만 부여하는 것을 의미합니다.
시퀀스를 쓸 때 하나의 시퀀스 값 = 다른 시퀀스 값을 가질 수 있습니까? –