Alter Table [Only]이름[ *]Action[, ...]이름[ *]컬럼toNew_ColumnAlter Table이름이름 바꾸기new_nameAlter Table이름스키마 설정new_schema여기서Action중 하나입니다.컬럼 type [ column_constraint[...]]컬럼[제한 | 캐스케이드]컬럼[데이터 설정] 유형type[사용표현]컬럼기본값 설정표현ALTER [column]컬럼삭제 기본값컬럼set | drop null이 아닙니다컬럼통계 설정정수ALTER [column]컬럼스토리지 세트 plain | 외부 |table_constraint드롭 제약 조건제약 _name[제한 | 캐스케이드]trigger_name| 모두 |trigger_name| 모두 |trigger_name활성화 항상 트리거trigger_name규칙 비활성화rewrite_rule_name규칙 활성화rewrite_rule_name복제 규칙 활성화rewrite_rule_name항상 규칙 활성화rewrite_rule_name클러스터 onindex_name클러스터없이 설정합니다Storage_Parameter = value[, ...])Storage_Parameter[, ...])parent_table상속 없음parent_table소유자에게New_ownerSET TABLESPACEnew_tablespace
Alter Table정의를 변경합니다
이 양식은 동일한 것을 사용하여 사설 토토에 새 열을 추가합니다.PostgreSQL : 문서 : 8.4 : 롤 토토 작성.
이 양식은 사설 토토에서 열을 삭제합니다. 인덱스 및 사설 토토캐스케이드사설 토토 외부의 것이 있으면
이 양식은 사설 토토의 열 유형을 변경합니다.사용조항을 지정합니다사용아니오가 있으면 조항이 제공되어야합니다
이 양식은삽입명령; 그들은 원인이되지 않습니다삽입보기에 대한 진술insert규칙
이 양식은 열이 허용하도록 표시되는지 여부를 변경합니다.널 설정열면
이 양식은 컬럼 당 통계 수집을 설정합니다분석운영. 대상은 할 수 있습니다default_statistics_target).PostgreSQL쿼리 플래너,섹션 14.2.
이 양식은 열의 스토리지 모드를 설정합니다. 이것토스트사설 토토,일반사용해야합니다정수Main인라인, 압축 가능한 데이터입니다.외부외부의 압축되지 않은 데이터를위한 것입니다.확장외부를위한 것입니다.확장is일반스토리지. 사용외부하위 문자열 작업을 수행합니다텍스트andBYTEA값은 페널티에서 더 빠르게 실행됩니다세트사설 토토에서 아무것도 바꾸지 않습니다.섹션 53.2자세한 내용은
이 양식은테이블 생성.
이 양식은 표에 지정된 제약 조건을 삭제합니다.
이 양식은 트리거 소속의 발사를 구성합니다Session_Replication_Role."원산지"(기본값) 또는"Local". 로 구성된 트리거enable replica"Replica"모드,로 구성된 트리거활성화현재 복제에 관계없이 발사됩니다
이 양식은 재 작성 규칙의 해고를 구성합니다on규칙은 항상 적용됩니다
이 양식은 미래의 기본 색인을 선택합니다클러스터운영. 그것
이 양식은 가장 최근에 사용 된 것을 제거합니다클러스터색인 사양
이 양식이 추가됩니다OID시스템섹션 5.4). 아무것도하지 않습니다
이것은에 해당하지 않습니다열 OID 추가; 그것은 정상을 추가 할 것입니다OID, 시스템 열이 아닙니다.
이 양식은를 제거합니다OID테이블에서 시스템 열. 이것은 정확히에 해당합니다.삭제 열 OID 제한OID열.
이 양식은 하나 이상의 스토리지 매개 변수를 변경합니다.스토리지사용 가능한 매개 변수에 대한 자세한 내용.클러스터또는 형식 중 하나Alter Table사설 토토을 강요합니다
참고 :while생성허용OIDSwith (Storage_Parameter)구문,Alter Table치료하지 않음OIDS스토리지 매개 변수로.OIDS로 설정andOIDS없이 설정양식
이 양식은 하나 이상의 스토리지 매개 변수를 재설정합니다.SET, 사설 토토
이 양식은 대상 테이블을 새로운 자식으로 추가합니다.NOT NULL부모의 제약 조건이 있어야합니다.NOT NULL제약
아동 테이블 제약 조건도 일치해야합니다check고유 한, 기본 키및외국 키제약 조건이 고려되지 않습니다.
이 양식은 대상 테이블을 제거합니다.
이 양식은 사설 토토, 시퀀스, 또는
이 양식은 테이블의 사설 토토 스페이스를SET TABLESPACE명령. 참조 참조사설 토토 스페이스 만들기.
theRename양식 변경
이 양식은 테이블을 다른 스키마로 옮깁니다.
제외한 모든 행동Renameand스키마 설정목록에 결합 할 수 있습니다
사용할 테이블을 소유해야합니다ALTER. 사설 토토의 스키마를 변경하려면도 있어야합니다.Create새 스키마의 권한. 에게Create
기존의 이름 (선택적으로 스키마 자격)전용is전용지정되지 않았습니다.*할 수 있습니다
새 또는 기존 열의 이름.
기존 열의 새 이름.
테이블의 새 이름.
새 열의 데이터 유형 또는 새 데이터 유형
테이블에 대한 새로운 테이블 제약 조건.
삭제할 기존 제약 조건의 이름.
드롭에 의존하는 객체를 자동으로 드롭합니다
어떤 경우 열이나 제약 조건을 떨어 뜨리지 않음
비활성화 또는 활성화 할 단일 트리거 이름.
테이블에 속하는 모든 트리거를 비활성화하거나 활성화하십시오.
테이블에 속하는 모든 트리거를 비활성화하거나 활성화하십시오
테이블을 표시 해야하는 색인 이름
테이블 스토리지 매개 변수의 이름.
테이블 스토리지 매개 변수의 새 값. 이것은 할 수 있습니다
이것과 연관 시키거나 해제하는 부모 사설 토토
테이블의 새 소유자의 사용자 이름.
테이블이 될 사설 토토 스페이스의 이름
테이블이 될 스키마의 이름
키워드열소음은 할 수 있습니다
열이 추가 될 때추가, 사설 토토의 모든 기존 행은기본값조항이 지정되어 있습니다).
null 기본값이없는 열 추가 또는 유형 변경OID칼럼 마찬가지로 전체 사설 토토을 다시 작성해야합니다.
A 추가check또는NOT NULL제약 조건은 테이블을 스캔해야합니다
다중을 지정하는 옵션을 제공하는 주된 이유Alter Table
the삭제 열양식은 그렇지 않습니다OID열; 그게
사실Alter Type요구 사항
ALTER TABLE TABLE ALTER COLUMN ADECOL TYPE ANDYPE;
여기서Anycol남은 사설 토토입니다AnyType와 같은 유형입니다
the사용옵션Alter Type실제로 모든 표현식을 지정할 수 있습니다Alter Type구문. 이러한 유연성 때문에사용표현은 적용되지 않습니다Alter Type변환에 실패 할 수 있습니다사용절Drop Default, 성능Alter Type그리고 사용세트적절한 새 기본값을 추가하려면. 비슷한
테이블에 자손 테이블이 있으면 허용되지 않습니다.ALTER 테이블 만거부됩니다. 이것은 보장합니다
재귀삭제 열작동삭제 열(예 :ALTER 테이블 만 ... 드롭 열) 절대 제거하지 마십시오
the트리거, 클러스터, 소유자및사설 토토 스페이스동작은 절대 재발하지 않습니다전용지정되었습니다. 제약 조건을 추가 할 수 있습니다check제약 및
시스템 카탈로그 테이블의 일부 변경은
참조PostgreSQL : 문서 : 8.4 : 롤 토토 작성유효한 매개 변수에 대한 추가 설명.5 장에 대한 추가 정보가 있습니다
유형 열을 추가하려면varchara
Alter Table Distributors 열 주소 추가 Varchar (30);
사설 토토에서 열을 떨어 뜨리려면 :
ALTER TABLE DESTROTORS 드롭 열 주소 제한;
하나의 기존 열의 유형을 하나로 변경하려면
사설 토토 유통 업체 변경
UNIX 타임 스탬프를 포함하는 정수 열을 변경하려면시간대가있는 타임 스탬프a사용절 :
ALTER TABLE FOO
열에 기본 표현식이없는 경우 동일합니다.
ALTER TABLE FOO
기존 열 이름을 바꾸려면 :
Alter Table Distributors CITY로 열 주소 이름을 바꿉니다.
기존 테이블의 이름을 바꾸려면 :
Alter Table Distributors 공급 업체로 이름 바꾸기;
컬럼에 널없는 구속 조건을 추가하려면 :
Alter Table Distributors Alter Column Street Set Not Null;
열에서 널없는 제약 조건을 제거하려면 :
Alter Table Distributors Alter Column Street Drop이 아닙니다.
테이블과 모든 어린이에 수표 제약 조건을 추가하려면 :
ALTER 테이블 분배기 추가 제약 조건 Zipchk check (char_length (zipcode) = 5);
테이블과 모든 수표 제약 조건을 제거하려면
ALTER 테이블 유통 업체 드롭 제약 조건 ZIPCHK;
한 테이블에서만 점검 제약을 제거하려면 :
ALTER 테이블 전용 유통 업체 삭제 제약 조건 ZIPCHK;
(체크 제약 조건은 모든 어린이의 경우에도 남아 있습니다
표에 외래 키 제약 조건을 추가하려면 :
ALTER 테이블 분배기 추가 제약 조건 DISTFK 외국 키 (주소) 참조 주소 (주소) 일치;
(멀티 컬럼) 고유 한 제약 조건을 테이블에 추가하려면 :
Alter Table Distributors 추가 구속 조건 Dist_ID_ZIPCODE_KEY 고유 (DIST_ID, ZIPCODE);
자동으로 명명 된 1 차 키 제약 조건을
ALTER 테이블 분배기 추가 기본 키 (dist_id);
테이블을 다른 사설 토토 스페이스로 이동하려면 :
ALTER 테이블 분배기 세트 사설 토토 스페이스 FASTTABLESPACE;
사설 토토을 다른 스키마로 이동하려면 :
ALTER TABLE MYSCHEMA.DITURITORS SET SCHEMA YOUSTCHEMA;