Share via


.alter table 명령

.alter table 명령은 다음을 수행합니다.

  • "보존된" 열의 데이터 보호
  • 테이블 열 다시 정렬
  • 새 열 스키마, docstring및 폴더를 기존 테이블로 설정하고 기존 열 스키마, docstring및 폴더를 덮어씁니다.
  • 테이블 이름의 범위를 지정하는 특정 데이터베이스의 컨텍스트에서 실행해야 합니다.

경고

.alter 명령을 잘못 사용하면 데이터가 손실 될 수 있습니다.

사용 권한

이 명령을 실행하려면 테이블 관리 이상의 권한이 있어야 합니다.

Syntax

.altertableTablename(Columnname:columnType [, ...]) [with(propertyName=propertyValue [, ...])]

구문 규칙에 대해 자세히 알아봅니다.

매개 변수

이름 형식 필수 설명
tableName string ✔️ 변경할 테이블의 이름입니다.
columnName, columnType string ✔️ 해당 열의 데이터 형식에 매핑된 기존 열 또는 새 열의 이름입니다. 이러한 매핑 목록은 출력 열 스키마를 정의합니다.
propertyName, propertyValue string 키-값 속성 쌍의 쉼표로 구분된 목록입니다. 지원되는 속성을 참조하세요.

경고

명령에 지정되지 않은 기존 열이 삭제됩니다. 이로 인해 예기치 않은 데이터 손실이 발생할 수 있습니다.

를 사용하여 .show table [tableName] cslschema 기존 테이블 스키마를 변경하기 전에 가져옵니다.

지원되는 속성

Name 형식 Description
docstring string 추가할 엔터티를 설명하는 자유 텍스트입니다. 이 문자열은 엔터티 이름 옆에 있는 다양한 UX 설정에 표시됩니다.
folder string 테이블에 추가할 폴더의 이름입니다.

명령이 데이터에 미치는 영향

  • 명령에 나열된 열의 기존 데이터는 수정되지 않습니다.
  • 명령에 나열되지 않은 열의 기존 데이터가 삭제됩니다.
  • 스키마 끝에 새 열이 추가됩니다.
  • 새 열의 데이터는 null로 간주됩니다.
  • 테이블에는 지정된 것과 동일한 순서로 동일한 열이 있습니다.

참고

열 형식을 변경하려고 하면 명령이 실패합니다. 대신 .alter column를 사용하세요.

경고

  • 열 순서를 무시하고 잘못된 열로 데이터를 수집하는 위험과 .alter table 병렬로 발생하는 데이터 수집입니다. 이를 방지하려면 수집에서 매핑 개체를 사용하거나 명령을 실행하는 .alter table 동안 수집을 중지해야 합니다.
  • 데이터 수집은 테이블의 열 스키마를 수정할 수 있습니다. 수집 중에 추가된 원하는 열을 실수로 제거하지 않도록 주의하세요.

예제

.alter table MyTable (ColumnX:string, ColumnY:int) 
.alter table MyTable (ColumnX:string, ColumnY:int) with (docstring = "Some documentation", folder = "Folder1")

테이블 설정을 유지하고 특정 열만 재정의하거나 확장하려는 경우에 사용합니다 .alter-merge . 자세한 내용은 .alter-merge 테이블을 참조하세요.