
File name
Commit message
Commit date
File name
Commit message
Commit date
File name
Commit message
Commit date
File name
Commit message
Commit date
File name
Commit message
Commit date
File name
Commit message
Commit date
File name
Commit message
Commit date
<?xml version="1.0" encoding="UTF-8" ?>
<!DOCTYPE mapper PUBLIC "-//mybatis.org//DTD Mapper 3.0//EN" "http://mybatis.org/dtd/mybatis-3-mapper.dtd">
<mapper namespace="com.takensoft.taken_bi_manager.data.dao.DataDAO">
<resultMap id="ConnectionDBResult" type="ConnectionDB">
<result property="dbConectId" column="db_conect_id"/>
<result property="conectNm" column="conect_nm"/>
<result property="conectDc" column="conect_dc"/>
<result property="databaseNm" column="database_nm"/>
<result property="schemaNm" column="schema_nm"/>
<result property="databaseType" column="database_type"/>
<result property="conectIp" column="conect_ip"/>
<result property="conectPort" column="conect_port"/>
<result property="userId" column="user_id"/>
<result property="userPassword" column="user_password"/>
<result property="option" column="option"/>
<result property="useType" column="use_type"/>
<result property="useAt" column="use_at"/>
<result property="isGroupDatabase" column="group_database_at"/>
<result property="creatDt" column="creat_dt"/>
<result property="creatId" column="creat_id"/>
<result property="updtDt" column="updt_dt"/>
<result property="updtId" column="updt_id"/>
<result property="dataset_post_id" column="data_post_id"/>
</resultMap>
<!-- 데이터 베이스 커넥션 정보 저장 및 업데이트 -->
<update id="conflictInsertDbConnection" parameterType="ConnectionDB">
INSERT INTO db_conect_info
(
db_conect_id
, conect_dc
, database_nm
, schema_nm
, database_type
, conect_ip
, conect_port
, user_id
, user_password
, "option"
, use_type
, use_at
, conect_nm
, group_database_at
, creat_dt
, creat_id
, data_post_id
)
VALUES(
#{dbConectId}
, #{conectDc}
, #{databaseNm}
, #{schemaNm}
, #{databaseType}
, #{conectIp}
, #{conectPort}
, #{userId}
, #{userPassword}
, #{option}
, #{useType}
, #{useAt}
, #{conectNm}
, #{isGroupDatabase}
, current_timestamp
, #{creatId}
, #{dataset_post_id}
)
ON CONFLICT(db_conect_id)
DO UPDATE
SET conect_dc = #{conectDc}
, database_nm = #{databaseNm}
, schema_nm = #{schemaNm}
, database_type = #{databaseType}
, conect_ip = #{conectIp}
, conect_port = #{conectPort}
, user_id = #{userId}
, user_password = #{userPassword}
, "option" = #{option}
, use_type = #{useType}
, use_at = #{useAt}
, conect_nm = #{conectNm}
, group_database_at = #{isGroupDatabase}
, updt_dt = #{updtDt}
, updt_id = #{updtId}
, data_post_id = #{dataset_post_id}
</update>
<!-- 데이터 베이스 커넥션 셀렉트 리스트 -->
<select id="selectDbConnectionList" parameterType="SearchVO" resultMap="ConnectionDBResult">
SELECT
db_conect_id
, conect_dc
, database_nm
, schema_nm
, database_type
, conect_ip
, conect_port
, user_id
, user_password
, "option"
, creat_dt
, creat_id
, updt_dt
, updt_id
, use_type
, use_at
, conect_nm
, group_database_at
, data_post_id
FROM db_conect_info
WHERE true
<!-- 검색영역 -->
<foreach item="item" index="index" collection="searchObjectList">
<choose>
<when test="item.type != null and item.type !='' and item.type == 'dates'">
AND
#{item.value}::timestamp <![CDATA[<=]]> ${item.key}::timestamp
AND
${item.key}::timestamp <![CDATA[<]]> #{item.value2}::timestamp + INTERVAL '1' DAY
</when>
<when test="item.type != null and item.type !='' and item.value != null and item.value !='' and item.type == 'eq'">
AND
${item.key} = #{item.value}
</when>
<when test="item.type != null and item.type !='' and item.value != null and item.value !=''">
AND
${item.key} LIKE CONCAT('%', #{item.value}, '%')
</when>
</choose>
</foreach>
<!-- 검색영역 끝 -->
LIMIT #{perPage} OFFSET ((#{currentPage} - 1) * #{perPage})
</select>
<!-- 데이터 베이스 커넥션 셀렉트 리스트 카운트 -->
<select id="selectDbConnectionListCount" parameterType="SearchVO" resultType="Integer">
SELECT count(*)
FROM db_conect_info
WHERE true
<!-- 검색영역 -->
<foreach item="item" index="index" collection="searchObjectList">
<choose>
<when test="item.type != null and item.type !='' and item.type == 'dates'">
AND
#{item.value}::timestamp <![CDATA[<=]]> ${item.key}::timestamp
AND
${item.key}::timestamp <![CDATA[<]]> #{item.value2}::timestamp + INTERVAL '1' DAY
</when>
<when test="item.type != null and item.type !='' and item.value != null and item.value !='' and item.type == 'eq'">
AND
${item.key} = #{item.value}
</when>
<when test="item.type != null and item.type !='' and item.value != null and item.value !=''">
AND
${item.key} LIKE CONCAT('%', #{item.value}, '%')
</when>
</choose>
</foreach>
<!-- 검색영역 끝 -->
</select>
<!-- 데이터 베이스 커넥션 셀렉트 단건 -->
<select id="selectDbConnectionOne" parameterType="String" resultMap="ConnectionDBResult">
SELECT
db_conect_id
, conect_dc
, database_nm
, schema_nm
, database_type
, conect_ip
, conect_port
, user_id
, user_password
, "option"
, creat_dt
, creat_id
, updt_dt
, updt_id
, use_type
, use_at
, conect_nm
, group_database_at
, data_post_id
FROM db_conect_info
WHERE db_conect_id = #{db_conect_id}
</select>
<!-- 추가 24.04.11 하관우 API 수집-->
<!-- DB 연계정보 삭제 -->
<delete id="deleteConnectionDb" parameterType="String" >
DELETE FROM db_conect_info
WHERE db_conect_id = #{db_conect_id}
</delete>
</mapper>