2010-12-15 3 views
1

다음과 같은 질문이 있습니다. 예를 들어 "people"테이블이있는 경우 "public_people_audit"테이블이있을 것입니다 (예 : "public"은 테이블이있는 스키마입니다). "감사"는 선택된 접미사 임).postgres가 자동으로 청각 테이블의 열 정의를 업데이트 할 수 있습니까?

이제 팀원이 "사람"테이블을 수정하고 열을 추가하면 청각 테이블에서이를 수행하는 것을 잊어 버릴 수 있으며 시스템이 실패합니다. 새 열을 삽입하려고하기 때문입니다 값을 찾지 못하고 찾지 못합니다.

나는 팀이 조심해야하고 두 테이블에 수정 사항을 넣어야한다는 것을 알고 있지만 누군가가 "ALTER TABLE people ADD COLUMN foo VARCHAR (10)"명령을 사용하면이 작업을 자동화 할 수있는 방법이있을 수 있습니다. public_people_audit 테이블에서 실행되므로 매우 유용합니다.

+0

@nate c, 포스트그레스는 아직 DDL 트리거를 지원하지 않는다고 생각합니다. – Unreason

답변

1

짧은 대답 : 아니오.

더 빠른 대답은 빠른 스크립트를 작성하여 자동화 할 수 있다는 것입니다. 감사가 필요한 몇 가지 테이블을 나열하는 간단한 텍스트 파일을 만듭니다. 스크립트는 텍스트 파일을 읽고 기본 테이블의 열을보고 누락 된 열이 감사 테이블에 추가되는지 확인합니다.

관련 문제