이 문서는 지원되지 않는 PostgreSQL 버전에 대한 것입니다.
당신은 다음과 같은 페이지를 보고 싶을 수도 있습니다.PostgreSQL : 문서 : 17 : 5.7. 스포츠 토토 베트맨 수정버전 또는 위에 나열된 다른 지원 버전 중 하나를 사용하세요.

5.5. 와이즈 토토 수정

당신이 와이즈 토토을 만들고 당신이 와이즈 토토을 만들었다는 것을 깨닫게 되면 실수 또는 응용 프로그램의 요구 사항이 변경될 수 있습니다. 와이즈 토토을 삭제하고 다시 생성하십시오. 그러나 이것은 편리하지 않습니다 와이즈 토토이 이미 데이터로 채워져 있거나 와이즈 토토이 다른 데이터베이스 개체(예: 외부 개체)에서 참조됩니다. 키 제약). 그러므로PostgreSQL다음 명령군을 제공합니다. 기존 테이블을 수정합니다. 참고로 이는 에 포함된 데이터를 변경하는 것과 개념적으로 구별됩니다. 테이블: 여기서는 정의를 변경하는 데 관심이 있습니다. 테이블의 구조.

당신은 다음을 할 수 있습니다:

  • 열 추가

  • 열 제거

  • 제약조건 추가

  • 제약조건 제거

  • 기본값 변경

  • 열 데이터 유형 변경

  • 열 이름 바꾸기

  • 와이즈 토토 이름 바꾸기

이 모든 작업은 다음을 사용하여 수행됩니다.와이즈 토토 변경명령, 그 참조 페이지에는 여기에 제공된 것 이상의 세부정보가 포함되어 있습니다.

5.5.1. 추가 열

열을 추가하려면 다음과 같은 명령을 사용하세요:

ALTER TABLE 제품은 COLUMN 설명 텍스트를 추가합니다.

새 열은 처음에 기본값으로 채워집니다 값이 제공됩니다. (a를 지정하지 않으면 null입니다.기본값절).

동시에 열에 대한 제약 조건을 정의할 수도 있습니다 시간, 일반적인 구문 사용:

ALTER TABLE 제품 ADD COLUMN 설명 텍스트 확인(설명 < '');

실제로 열에 적용할 수 있는 모든 옵션 설명와이즈 토토 생성될 수 있습니다 여기에 사용되었습니다. 그러나 기본값은 다음과 같아야 합니다. 주어진 제약 조건을 만족하거나,추가실패할 것입니다. 또는 다음을 추가할 수 있습니다. 새로운 제약 조건을 입력한 후 나중에 제약 조건을 적용합니다(아래 참조). 열이 정확합니다.

팁:기본값이 있는 열을 추가하려면 다음이 필요합니다. 테이블의 각 행 업데이트(새 열 저장) 값). 그러나 기본값이 지정되지 않은 경우,PostgreSQL다음을 피할 수 있습니다 물리적 업데이트. 따라서 열을 다음으로 채우려는 경우 대부분 기본값이 아닌 값이므로 열을 추가하는 것이 가장 좋습니다. 기본값은 없습니다. 다음을 사용하여 올바른 값을 삽입하세요.업데이트를 선택한 다음 원하는 기본값을 다음과 같이 추가하세요. 아래에 설명되어 있습니다.

5.5.2. 열 제거

열을 제거하려면 다음과 같은 명령을 사용하십시오:

ALTER TABLE 제품 DROP COLUMN 설명;

열에 있던 모든 데이터가 사라집니다. 와이즈 토토 열과 관련된 제약 조건도 삭제됩니다. 그러나 만일 열이 다른 제약 조건의 외래 키 제약 조건에 의해 참조됩니다. 와이즈 토토,PostgreSQL하지 않을 것입니다 해당 제약 조건을 자동으로 삭제합니다. 삭제를 승인할 수 있습니다. 추가하여 열에 의존하는 모든 것캐스케이드:

ALTER TABLE 제품 DROP COLUMN 설명 CASCADE;

참조와이즈 토토 : 문서 : 8.4 : 종속성 추적에 대한 이에 대한 일반적인 메커니즘에 대한 설명입니다.

5.5.3. 추가 제약

제약조건을 추가하려면 테이블 제약조건 구문이 사용됩니다. 예를 들면:

ALTER TABLE 제품 ADD CHECK(이름 < '');
ALTER TABLE 제품 ADD CONSTRAINT some_name UNIQUE (product_no);
ALTER TABLE 제품 외래 키 추가(product_group_id) REFERENCES product_groups;

다음으로 쓸 수 없는 null이 아닌 제약 조건을 추가하려면 테이블 제약조건은 다음 구문을 사용하세요.

ALTER TABLE 제품 ALTER COLUMN product_no SET NOT NULL;

제약조건이 즉시 확인되므로 테이블은 데이터를 추가하려면 먼저 제약 조건을 충족해야 합니다.

5.5.4. 제약조건 제거

제약조건을 제거하려면 이름을 알아야 합니다. 당신이 이름을 지어주면 쉽습니다. 그렇지 않으면 시스템이 할당됩니다. 생성된 이름을 알아내야 합니다.psql명령\d와이즈 토토 이름도움이 될 수 있어요 여기; 다른 인터페이스도 검사 방법을 제공할 수 있습니다. 테이블 세부정보. 그런 다음 명령은 다음과 같습니다.

ALTER TABLE 제품 DROP CONSTRAINT some_name;

(다음과 같이 생성된 제약 조건 이름을 처리하는 경우$2, 다음을 수행해야 한다는 점을 잊지 마세요. 유효한 식별자로 만들려면 큰따옴표를 사용하세요.)

열을 삭제하는 것과 마찬가지로 추가해야 합니다.캐스케이드제약조건을 삭제하려는 경우 다른 것이 달려 있습니다. 예를 들어 외래 키는 다음과 같습니다. 제약 조건은 고유 또는 기본 키 제약 조건에 따라 달라집니다. 참조된 열입니다.

이것은 null이 아닌 것을 제외한 모든 제약 유형에 대해 동일하게 작동합니다. 제약. null이 아닌 제약 조건을 삭제하려면 다음을 사용하세요.

ALTER TABLE 제품 ALTER COLUMN product_no DROP NOT NULL;

(null이 아닌 제약 조건에는 이름이 없다는 점을 기억하십시오.)

5.5.5. 열의 기본값 변경

열의 새로운 기본값을 설정하려면 다음과 같은 명령을 사용하십시오:

ALTER TABLE 제품 ALTER COLUMN 가격 SET DEFAULT 7.77;

이것은 다음의 기존 행에 영향을 미치지 않습니다. 테이블에서는 향후 기본값을 변경합니다.삽입명령.

기본값을 제거하려면 다음을 사용하십시오:

ALTER TABLE 제품 ALTER COLUMN 가격 DROP DEFAULT;

이것은 기본값을 null로 설정하는 것과 사실상 동일합니다. 결과적으로 기본값을 삭제하는 것은 오류가 아닙니다. 하나는 정의되지 않았습니다. 왜냐하면 기본값은 암시적으로 null 값입니다.

5.5.6. 열의 데이터 유형 변경

열을 다른 데이터 유형으로 변환하려면 다음 명령을 사용하십시오 좋아요:

ALTER TABLE 제품 ALTER COLUMN 가격 TYPE 숫자(10,2);

이것은 열의 각 기존 항목이 있는 경우에만 성공합니다. 암시적 캐스트를 통해 새 유형으로 변환될 수 있습니다. 만약에 더 복잡한 변환이 필요하면 다음을 추가할 수 있습니다.사용 중계산 방법을 지정하는 절 기존의 새로운 가치.

PostgreSQL다음을 시도할 것입니다. 다음과 같이 열의 기본값(있는 경우)을 새 유형으로 변환합니다. 열과 관련된 모든 제약 조건도 마찬가지입니다. 하지만 이것들은 변환이 실패하거나 놀라운 결과가 나올 수 있습니다. 일반적으로 열에 대한 제약 조건을 삭제하는 것이 가장 좋습니다. 유형을 변경한 다음 적절하게 수정하여 다시 추가합니다. 이후에는 제약이 따릅니다.

5.5.7. 열 이름 바꾸기

열 이름을 바꾸려면:

ALTER TABLE 제품 RENAME COLUMN product_no TO product_number;

5.5.8. 와이즈 토토 이름 바꾸기

와이즈 토토 이름을 바꾸려면:

ALTER TABLE 제품 이름을 항목으로 변경;