기관데이터 insert 쿼리, VO 추가

This commit is contained in:
psh 2024-06-05 21:28:36 +09:00
parent 482430a46a
commit 688e8c471f
4 changed files with 97 additions and 12 deletions

View File

@ -0,0 +1,28 @@
package egovframework.com.mtdata.database.vo;
import lombok.Getter;
import lombok.Setter;
// author : psh
@Getter
@Setter
public class ColumnInfoVO {
/** 컬럼 아이디 */
private int columnId;
/** 테이블 아이디 */
private int tableId;
/** 컬럼 이름 */
private String columnNm;
/** 타입 */
private String columnType;
/** null 허용 */
private boolean isNullable;
/** pk여부 */
private boolean isPkey;
/** fk 여부 */
private boolean isFkey;
/** 컬럼 ?? */
private String columnDc;
/** default_value */
private String defaultValue;
}

View File

@ -0,0 +1,28 @@
package egovframework.com.mtdata.database.vo;
import lombok.Getter;
import lombok.Setter;
// author : psh
@Getter
@Setter
public class TableInfoVO {
/** 테이블 아이디 */
private int tableId;
/** DB 아이디 */
private int dbLinkId;
/** 테이블명 */
private String tableNm;
/** 테이블 description ? */
private String tableDc;
/** 테이블 등록날짜 */
private String registDate;
/** ??? */
private String engine;
}

View File

@ -16,14 +16,19 @@
</resultMap>
<insert id="insertDbInfo" parameterType="DatabaseInfoVO">
<selectKey resultType="int" keyProperty="dbLinkId" order="BEFORE">
SELECT nextval('inst_db_info_db_link_id_seq') as dbLinkId
</selectKey>
INSERT INTO INST_DB_INFO
(DB_CONN_ID,
DB_NM)
VALUES
(#{dbConnId},
#{dbNm})
(DB_LINK_ID,
DB_CONN_ID,
DB_NM)
VALUES
(#{dbLinkId},
#{dbConnId},
#{dbNm})
</insert>
<insert id="insertDbConnInfo" parameterType="DatabaseInfoVO">
INSERT INTO INST_DB_CONN_INFO
(SYS_ID,
@ -45,7 +50,7 @@
SELECT LAST_INSERT_ID()
</selectKey>
</insert>
<select id="selectSysDb" resultMap="databaseInfoMap">
SELECT B.*
FROM (SELECT ROW_NUMBER() OVER() rn, A.*
@ -70,18 +75,18 @@
<if test='dbType != null and(dbType eq "mysql".toString())'>
, (SELECT CONCAT(DB_TYPE||'_'||B.DB_CONN_ID) AS pgSourceNm )
</if>
FROM INST_DB_CONN_INFO A
FROM INST_DB_CONN_INFO A
LEFT OUTER JOIN (
SELECT DB_CONN_ID, STRING_AGG(DB_NM, ', ' ) DBNMLIST
FROM INST_DB_INFO
WHERE USE_YN = 'Y'
GROUP BY DB_CONN_ID
) B
) B
ON (A.DB_CONN_ID = B.DB_CONN_ID)
WHERE DB_TYPE = #{dbType}
ORDER BY SYS_ID , A.DB_CONN_ID
</select>
<select id="checkDbConnInfo" parameterType="DatabaseInfoVO" resultType="java.lang.Integer">
SELECT COUNT(*)
FROM INST_DB_CONN_INFO
@ -89,6 +94,22 @@
AND DB_CONN_IP = #{dbConnIp}
</select>
<insert id="insertDbTblInfo" parameterType="TableInfoVO">
<selectKey resultType="int" keyProperty="tableId" order="BEFORE">
SELECT nextval('inst_db_tbl_info_seq') as tableId
</selectKey>
INSERT INTO INST_DB_TBL_INFO
( TABLE_ID, DB_LINK_ID, TABLE_NM, TABLE_DC, REGIST_DATE, ENGINE )
VALUES
( #{tableId}, #{dbLinkId}, #{tableNm}, #{tableDc}, #{registDate}, #{engine} )
</insert>
<insert id="insertTblColInfo" parameterType="ColumnInfoVO">
INSERT INTO inst_tbl_col_info (table_id, column_nm, column_type, is_nullable, is_pkey, is_fkey, column_dc, default_value)
VALUES (#{tableId}, #{columnNm}, #{columnType}, #{isNullable}, #{isPkey}, #{isFkey}, #{columnDc}, #{defaultValue})
</insert>
<select id="selectRegisterdDBInfoList" parameterType="DatabaseInfoVO" resultType="DatabaseInfoVO">
SELECT
row_number() over () as row,
@ -371,4 +392,4 @@
AND column_id = #{columnId}
</update>
</mapper>
</mapper>

View File

@ -12,5 +12,13 @@
<typeAlias alias="DBInfoVO" type="egovframework.com.mtdata.database.vo.DBInfoVO"/>
<typeAlias alias="DBTblInfoVO" type="egovframework.com.mtdata.database.vo.DBTblInfoVO"/>
<typeAlias alias="DBTblColInfoVO" type="egovframework.com.mtdata.database.vo.DBTblColInfoVO"/>
<typeAlias alias="tableInfoVO" type="egovframework.com.mtdata.database.vo.TableInfoVO"/>
<typeAlias alias="columnInfoVO" type="egovframework.com.mtdata.database.vo.ColumnInfoVO"/>
<!-- 원천데이터 -->
</typeAliases>
</configuration>
</configuration>