package com.eactive.eai.rms.common.dbconsole.dto;

import lombok.AllArgsConstructor;
import lombok.Builder;
import lombok.Data;
import lombok.NoArgsConstructor;

/**
 * 컬럼 정보 DTO
 */
@Data
@Builder
@NoArgsConstructor
@AllArgsConstructor
public class ColumnInfoDto {

    /**
     * 컬럼명
     */
    private String columnName;

    /**
     * 데이터 타입
     */
    private String dataType;

    /**
     * 데이터 길이
     */
    private Integer dataLength;

    /**
     * NULL 허용 여부 (Y/N)
     */
    private String nullable;

    /**
     * 기본값
     */
    private String defaultValue;

    /**
     * 코멘트
     */
    private String comments;

    /**
     * 컬럼 순서
     */
    private Integer columnId;

    /**
     * PK 여부
     */
    private boolean primaryKey;

    /**
     * UK 여부
     */
    private boolean uniqueKey;

    /**
     * FK 여부
     */
    private boolean foreignKey;

    /**
     * 인덱스 여부
     */
    private boolean indexed;

    /**
     * 인덱스명 (콤마로 구분)
     */
    private String indexName;

    /**
     * LOB 타입 여부
     */
    private boolean lobType;
}
