[]
테이블 스키마는 원시 데이터가 데이터 매니저 내부에서 어떻게 해석되고 관리되는지를 정의합니다.
스키마 내에서 열은 핵심 모델링 단위입니다.
각 열은 레코드의 필드가 테이블 내부에서 어떻게 동작하는지를 설명합니다.
열은 UI 요소가 아닙니다.
열은 식별자, 형식, 동작 및 표시 메타데이터를 결정하는 데이터 모델링 정의입니다.
데이터가 테이블에 로드되면 데이터 원본의 각 객체는 레코드(행)가 됩니다.
const table = dataManager.addTable("orders", {
data: [
{ id: 1, price: 10, quantity: 2 }
],
schema: {
columns: {
id: { dataType: "number", isPrimaryKey: true },
price: { dataType: "number" },
quantity: { dataType: "number" },
total: {
dataType: "formula",
value: "=[@price] * [@quantity]"
}
}
}
});이 예제에서:
id는 레코드 식별자를 정의합니다.
price와 quantity는 형식이 지정된 필드를 정의합니다.
total은 다른 필드에서 파생된 계산 열입니다.
열 정의가 없으면 필드는 기본 동작을 사용하여 해석됩니다.
열을 명시적으로 정의하면 데이터가 구조화되고 관리되는 방식을 제어할 수 있습니다.
열 정의는 다음을 지정할 수 있습니다.
필드가 원시 데이터에 매핑되는 방식
값이 구문 분석되고 형식화되는 방식
레코드를 고유하게 식별하는지 여부
계산 열인지 또는 이벤트 기반 열인지 여부
유효성 검사 및 인덱싱 동작
기본 표시 메타데이터
책임을 명확하게 유지하기 위해 열 구성은 다음 범주로 구성됩니다.
식별자 및 구조 매핑을 정의합니다.
예:
열 이름 및 데이터 매핑
dataType
isPrimaryKey
수식 기반 값 정의
이러한 설정은 레코드가 구조적으로 어떻게 해석되는지를 결정합니다.
구문 분석 이후 열 값이 어떻게 동작하는지를 제어합니다.
예:
필수 및 읽기 전용 규칙
기본값
구문 분석 패턴
인덱싱
Null 및 빈 값에 대한 표시 대체값
이러한 설정은 유효성 검사, 정규화 및 성능에 영향을 줍니다.
동적 및 관계형 동작을 활성화합니다.
예:
수식 열
트리거 수식
조회 정의
관계 인식 기능
이러한 설정은 계산 기능과 제어된 값 도메인을 제공합니다.
View에서 렌더링될 때의 기본 표시 동작을 정의합니다.
예:
캡션 및 너비
셀 스타일 및 머리글 스타일
조건부 서식
유효성 검사 규칙
상호 작용 컨트롤
이러한 설정은 저장된 데이터를 수정하지 않습니다.
대신 View가 사용할 수 있는 기본 메타데이터를 제공합니다.
열 정의는 테이블 스키마에 속합니다.
열 정의는:
데이터 매니저 내부에서 데이터가 동작하는 방식을 모델링합니다.
특정 UI 구현과 독립적으로 유지됩니다.
View는 열 메타데이터를 사용하여 데이터를 렌더링합니다.
View 수준 구성은 스키마를 변경하지 않고도 표시 관련 설정을 재정의할 수 있습니다.
이러한 분리를 통해 문서 체계와 제품 아키텍처 내에서 데이터 모델링과 표시가 서로 분리된 상태로 유지됩니다.