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

import lombok.Data;

/**
 * SQL 실행 요청 DTO
 */
@Data
public class SqlRequestDto {

    /**
     * 세션 ID
     */
    private String sessionId;

    /**
     * 실행할 SQL
     */
    private String sql;

    /**
     * 액션 (EXECUTE, COMMIT, ROLLBACK, DISCONNECT)
     */
    private String action;

    /**
     * 최대 조회 행 수
     */
    private Integer maxRows;

    /**
     * 데이터소스 타입 (JNDI, DIRECT)
     */
    private String datasourceType;

    /**
     * JNDI 이름
     */
    private String jndiName;

    /**
     * JDBC URL (DIRECT 연결 시)
     */
    private String jdbcUrl;

    /**
     * 사용자명 (DIRECT 연결 시)
     */
    private String username;

    /**
     * 비밀번호 (DIRECT 연결 시 또는 COMMIT 확인용)
     */
    private String password;

    /**
     * 드라이버 클래스명
     */
    private String driverClassName;

    /**
     * 스키마명 (테이블/컬럼 조회 시)
     */
    private String schemaName;

    /**
     * 테이블명 (컬럼/DDL 조회 시)
     */
    private String tableName;
}
