Class TableSchemaValidator

java.lang.Object
com.altibase.document.util.TableSchemaValidator

public class TableSchemaValidator extends Object
기존 테이블의 스키마가 컬렉션 요구사항에 맞는지 검증하는 유틸리티 클래스이다.

이 클래스는 기존 테이블을 컬렉션으로 매핑(MAP 모드)할 때 테이블 구조가 컬렉션의 필수 요구사항을 만족하는지 검증한다.

  • Constructor Details

    • TableSchemaValidator

      public TableSchemaValidator(Connection aConn) throws SQLException
      TableSchemaValidator 인스턴스를 생성한다.
      Parameters:
      aConn - 데이터베이스 연결
      Throws:
      SQLException - 메타데이터 조회 실패 시
  • Method Details

    • tableExists

      public boolean tableExists(String aTableName) throws SQLException
      테이블이 존재하는지 확인한다.
      Parameters:
      aTableName - 테이블 이름
      Returns:
      테이블 존재 여부
      Throws:
      SQLException - 메타데이터 조회 실패 시
    • validateDefaultSchema

      public void validateDefaultSchema(String aTableName)
      기존 테이블이 기본 컬렉션 스키마(CollectionMetaData 없음)에 맞는지 검증한다.

      필수 컬럼: - _ID: VARCHAR(40) PRIMARY KEY - CREATED: DATE - CREATED_BY: VARCHAR(100) (감사 추적용) - LAST_MODIFIED: DATE - LAST_MODIFIED_BY: VARCHAR(100) (감사 추적용) - DOCUMENT: JSON

      Parameters:
      aTableName - 검증할 테이블 이름
      Throws:
      AltibaseSchemaException - 스키마가 요구사항에 맞지 않을 경우
    • validateCustomSchema

      public void validateCustomSchema(String aTableName, CollectionMetaData aMetadata)
      기존 테이블이 커스텀 메타데이터에 맞는지 검증한다.

      필수 컬럼: - metadata.keyColumnName: metadata.keyTypeName PRIMARY KEY - CREATED: DATE - CREATED_BY: VARCHAR(100) (감사 추적용) - LAST_MODIFIED: DATE - LAST_MODIFIED_BY: VARCHAR(100) (감사 추적용) - DOCUMENT: metadata.jsonColumnType

      Parameters:
      aTableName - 검증할 테이블 이름
      aMetadata - 검증 기준이 되는 메타데이터
      Throws:
      AltibaseSchemaException - 스키마가 요구사항에 맞지 않을 경우