기본 키는 종종 기본 테이블 이름보다 뒤쳐진다는 것을 발견했습니다. 이 스크립트는 문제가있는 항목을 식별하고 수정하는 데 도움이되었습니다.
select
table_name,
constraint_name ,
'ALTER TABLE ' || table_name || ' RENAME CONSTRAINT ' || constraint_name || ' TO ' || left(table_name, 58) || '_pkey;'
from information_schema.table_constraints tc
where constraint_type = 'PRIMARY KEY'
and constraint_name <> left(table_name, 58) || '_pkey';
기본 키 이름이 더 이상 "기본"패턴 ( <tablename>_pkey
) 이 아닌 모든 테이블을 찾고 각각에 대한 이름 바꾸기 스크립트를 만듭니다.
위 코드에서 58 자 제한은 제약 조건 이름의 최대 크기 (63 바이트)를 고려한 것입니다.
분명히 그것을 실행하기 전에 반환되는 것을 확인하십시오. 다른 사람들에게 도움이되기를 바랍니다.