데이터 툴 설정
데이터 툴의 설정을 적용 합니다.
1. 데이터베이스 커넥션 덮어쓰기 여부
개발도구가 시작 될 때 기존에 만들어진 데이터베이스 커넥션을 덮어쓰기할지 여부를 지정합니다.
1. true 인 경우
설정에 등록한 이름과 동일한 커넥션이 이미 있다면 삭제 하고 새로 생성 합니다.
2. false 인 경우
설정에 등록한 이름과 동일한 커넥션이 이미 있다면 새로 생성하지 않습니다. 없는 경우에만 새로 생성 합니다.
속성 | 설명 |
---|---|
키 |
database.connection.override |
기본값 |
false |
다중 값 여부 |
아니오 |
사용할 수 있는 값 |
true |
false |
2. 데이터베이스 커넥션 삭제 여부
개발도구가 시작 될 때 기존에 만들어진 모든 데이터베이스 커넥션을 삭제하고 새로 만들지 여부를 지정 합니다.
1. true 인 경우
기존에 만들어진 모든 커넥션을 삭제 합니다.
2. false 인 경우
기존 커넥션을 삭제 하지 않습니다.
속성 | 설명 |
---|---|
키 |
database.connection.clear |
기본값 |
false |
다중 값 여부 |
아니오 |
사용할 수 있는 값 |
true |
false |
3. 데이터베이스 커넥션 설정 정보
데이터베이스 커넥션의 연결 정보를 지정 합니다.
속성)
1. name: 커넥션 이름. 값이 없는 경우 Bxm Connection 을 사용.
2. vendor: ORACLE, MSSQL, DB2, MYSQL, TIBERO, PostgreSQL, MariaDB.
3. version: 데이터베이스의 버전. 예) ORACLE 인 경우 11, 12 등.
4. driverClass: 데이터베이스 드라이버 클래스.
5. host/encHost: 데이터베이스 연결을 위한 Host(평문). 암호화된 값을 사용할 경우 encHost 로 변경해서 사용해야 한다.
6. port/encPort: 데이터베이스 연결을 위한 Port(평문). 암호화된 값을 사용할 경우 encPort 로 변경해서 사용해야 한다.
7. database/encDatabase: SID 또는 Database 이름(평문). 암호화된 값을 사용할 경우 encDatabase 로 변경해서 사용해야 한다.
8. user/encUser: 데이터베이스 연결을 위한 계정(평문). 암호화된 값을 사용할 경우 encUser 로 변경해서 사용해야 한다.
9. pwd/encPwd: 데이터베이스 연결을 위한 계정의 비밀번호(평문). 암호화된 값을 사용할 경우 encPwd 로 변경해서 사용해야 한다.
10. jar: 데이트베이스 연결을 위한 라이브러리 이름. 라이브러리 이름과 일치하는 파일이 개발도구 설치 경로에 반드시 있어야 한다. 여러개를 사용할 경우 세미콜론(;)을 사용하여 값을 나열한다. 예시) oracle8.jar;orai18n.jar
예시1) name 값 없이 사용.
vendor=ORACLE, version=12, driverClass=oracle.jdbc.OracleDriver, host=yourIP,port=yourPort,database=yourDatabaseOrSID, user=yourAccount, pwd=yourPassword, jar=ojdbc8.jar
예시2) name 값 사용.
name=MyConnection, vendor=ORACLE, version=12, driverClass=oracle.jdbc.OracleDriver, host=yourIP,port=yourPort, database=yourDatabaseOrSID, user=yourAccount, pwd=yourPassword, jar=ojdbc8.jar
예시3) 암호화된 비밀번호 사용. *암호화된 비밀번호는 지정된 API 가 반환한 값을 사용 한다.
vendor=ORACLE, version=12, driverClass=oracle.jdbc.OracleDriver, host=yourIP, port=yourPort, database=yourDatabaseOrSID, user=yourAccount, encPwd=yourPassword, jar=ojdbc8.jar
속성 | 설명 |
---|---|
키 |
database.connection.properties |
다중 값 여부 |
예 |
사용할 수 있는 값 |
vendor=ORACLE, version=12,driverClass=oracle.jdbc.OracleDriver,host=yourIP,port=yourPort, database=yourDatabaseOrSID, user=yourAccount, pwd=yourPassword, jar=ojdbc8-12.2.0.1.jar |
vendor=ORACLE, version=12, driverClass=oracle.jdbc.OracleDriver,host=yourIP, port=yourPort, database=yourDatabaseOrSID, user=yourAccount, encPwd=yourPassword, jar=ojdbc8-12.2.0.1.jar |
|
name=Oracle Connection,vendor=ORACLE, version=12, driverClass=oracle.jdbc.OracleDriver, host=yourIP,port=yourPort, database=yourDatabaseOrSID, user=yourAccount, pwd=yourPassword, jar=ojdbc8-12.2.0.1.jar |
|
name=MySql Connection, vendor=MYSQL, version=5.7.24, host=yourIP, port=yourPort, database=yourDatabaseOrSID, user=yourAccount, pwd=yourPassword, jar=mysql-connector-java-5.1.39.jar |
4. 데이터베이스 ID
사용할 데이터베이스 ID 를 지정 합니다.
속성 | 설명 |
---|---|
키 |
database.id |
다중 값 여부 |
예 |
사용할 수 있는 값 |
oracle |
mysql |
5. 데이터 소스/커넥션/데이터베이스 ID - 매핑
데이터 소스, 커넥션, 데이터베이스 ID를 매핑 합니다.
속성 | 설명 |
---|---|
키 |
database.datasource.mapping |
다중 값 여부 |
예 |
사용할 수 있는 값 |
MainDS,Bxm Connection |
MainDS,Oracle Connection,oracle |
|
MainDS,MySql Connection,mysql |
6. 커넥션 연결 타임 아웃(밀리세컨드).
커넥션을 연결할 때 커넥션이 정상적인지 확인하기 위한 타임 아웃(밀리세컨드)을 지정 합니다.
속성 | 설명 |
---|---|
키 |
database.connection.validateTimeout |
기본값 |
3000 |
다중 값 여부 |
아니오 |
사용할 수 있는 값 |
1000 |
3000 |
|
10000 |
7. 테이블 선택 다이얼로그에서 선택할 스키마를 지정.
테이블 선택 다이얼로그의 스키마 선택 콤보 박스에 지정된 스키마 목록만 보여 줍니다.
속성 | 설명 |
---|---|
키 |
database.tableConfig.registeredSchemas |
다중 값 여부 |
예 |
사용할 수 있는 값 |
schema1 |
schema1,schema2 |
|
connectionName=Bxm Connection,schema1,schema2 |
8. 등록된 스키마만 사용.
등록된 스키마만 사용할지 여부를 지정 합니다.
등록된 스키마는 테이블 선택 다이얼로그에서 선택할 스키마를 지정.(database.tableConfig.registeredSchemas) 옵션에서 지정 할 수 있습니다.
속성 | 설명 |
---|---|
키 |
database.tableConfig.showOnly.registeredSchemas |
기본값 |
false |
다중 값 여부 |
아니오 |
사용할 수 있는 값 |
true |
false |
9. 프레임워크 테이블의 소유자
프레임워크에서 사용하는 테이블의 소유자를 지정합니다.
-
일반적으로 Schema이름
속성 | 설명 |
---|---|
키 |
database.framework.ownerTable |
기본값 |
|
다중 값 여부 |
아니오 |
사용할 수 있는 값 |
schemaName1 |
10. 프레임워크에서 사용할 커넥션 이름
프레임워크 테이블을 사용할 수 있는 커넥션의 이름을 지정 합니다.
속성 | 설명 |
---|---|
키 |
database.framework.connectionName |
기본값 |
Bxm Connection |
다중 값 여부 |
아니오 |
사용할 수 있는 값 |
Bxm Connection |
11. 컬럼 타입이 NUMBER 인 경우 BigDecimal 로 사용
테이블의 컬럼 타입이 NUMBER 인 경우에 IO의 타입을 BigDecimal 로 사용할지 여부를 지정 합니다.
속성 | 설명 |
---|---|
키 |
database.columnConfig.numberAsBigDecimal |
기본값 |
false |
다중 값 여부 |
아니오 |
사용할 수 있는 값 |
true |
false |
12. 컬럼 타입이 NUMBER 인 경우 컬럼 길이에 따라 Integer 또는 Long 타입으로 변환.
컬럼 타입이 NUMBER 인 경우 컬럼 길이에 따라 Integer, Long 또는 BigDecimal 타입으로 변환할 수 있습니다.
1. true 인 경우(사용자 지정값)
-
[database.columnConfig.integerMaxLength] 에 지정된 값 이하: Integer
-
[database.columnConfig.integerMaxLength] 에 지정된 값 초과 [database.columnConfig.longMaxLength] 에 지정된 값 이하 : Long
-
[database.columnConfig.longMaxLength] 에 지정된 값 초과 : BigDecimal
예시1) [database.columnConfig.integerMaxLength] 에 지정된 값이 6, [database.columnConfig.longMaxLength] 에 지정된 값이 15 인 경우
-
NUMBER(6) : Integer
-
NUMBER(7) : Long
-
NUMBER(15) : Long
-
NUMBER(16) : BigDecimal
예시2) [database.columnConfig.integerMaxLength] 에 지정된 값이 9, [database.columnConfig.longMaxLength] 에 지정된 값이 9 인 경우
-
NUMBER(9) : Integer
-
NUMBER(10) : BigDecimal
2. false 인 경우(기본값)
-
10 이하: Integer
-
10 초과 19 이하 : Long
-
19 초과 : BigDecimal
[database.columnConfig.numberAsBigDecimal(컬럼 타입이 NUMBER 인 경우 BigDecimal 로 사용)] 옵션이 비활성화 된 경우에 사용 가능. |
속성 | 설명 |
---|---|
키 |
database.columnConfig.useNumberTypeRange |
기본값 |
false |
다중 값 여부 |
아니오 |
사용할 수 있는 값 |
true |
false |
13. 컬럼 타입이 NUMBER 인 경우에 타입을 Integer 로 변환할 최대 길이 값
컬럼 타입이 NUMBER 이고 컬럼 길이가 지정된 값보다 작은 경우 타입을 Integer 로 변환 합니다.
-
[database.columnConfig.useNumberTypeRange] 옵션이 활성화 되어 있어야 동작 합니다.
속성 | 설명 |
---|---|
키 |
database.columnConfig.integerMaxLength |
기본값 |
10 |
다중 값 여부 |
아니오 |
사용할 수 있는 값 |
9 |
10 |
14. 컬럼 타입이 NUMBER 인 경우에 타입을 Long 로 변환할 최대 길이 값
컬럼 타입이 NUMBER 이고 컬럼 길이가 Integer 로 지정된 값보다 크고 Long 으로 지정된 값과 같거나 작은 경우 타입을 Long 으로 변환 합니다.
-
[database.columnConfig.useNumberTypeRange] 옵션이 활성화 되어 있어야 동작 합니다.
속성 | 설명 |
---|---|
키 |
database.columnConfig.longMaxLength |
기본값 |
19 |
다중 값 여부 |
아니오 |
사용할 수 있는 값 |
19 |
20 |
15. SELECT 구문의 기본 SQL 생성에 테이블 Alias 를 사용할지 여부
SELECT 구문의 기본 SQL 생성에 테이블 Alias 를 사용할지 여부를 지정 합니다.
속성 | 설명 |
---|---|
키 |
defaultSql.select.useTableAlias |
기본값 |
false |
다중 값 여부 |
아니오 |
사용할 수 있는 값 |
true |
false |
16. INSERT 구문의 기본 SQL 생성에 테이블 Alias 를 사용할지 여부
INSERT 구문의 기본 SQL 생성에 테이블 Alias 를 사용할지 여부를 지정 합니다.
속성 | 설명 |
---|---|
키 |
defaultSql.insert.useTableAlias |
기본값 |
false |
다중 값 여부 |
아니오 |
사용할 수 있는 값 |
true |
false |
17. UPDATE 구문의 기본 SQL 생성에 테이블 Alias 를 사용할지 여부
UPDATE 구문의 기본 SQL 생성에 테이블 Alias 를 사용할지 여부를 지정 합니다.
속성 | 설명 |
---|---|
키 |
defaultSql.update.useTableAlias |
기본값 |
false |
다중 값 여부 |
아니오 |
사용할 수 있는 값 |
true |
false |
18. DELETE 구문의 기본 SQL 생성에 테이블 Alias 를 사용할지 여부
DELETE 구문의 기본 SQL 생성에 테이블 Alias 를 사용할지 여부를 지정 합니다.
속성 | 설명 |
---|---|
키 |
defaultSql.delete.useTableAlias |
기본값 |
false |
다중 값 여부 |
아니오 |
사용할 수 있는 값 |
true |
false |
19. Lock Update 옵션
FOR UPDATE 구문의 옵션을 지정할 수 있습니다.
예시) NOWAIT, WAIT
속성 | 설명 |
---|---|
키 |
defaultSql.lockUpdate.option |
기본값 |
NOWAIT |
다중 값 여부 |
아니오 |
사용할 수 있는 값 |
NOWAIT |
WAIT |
20. Lock Update 생성시 Schema 사용 여부
Lock Update를 위해 생성되는 Update 구문의 테이블 이름에 스키마 사용 여부를 지정할 수 있습니다.
속성 | 설명 |
---|---|
키 |
defaultSql.lockUpdate.appendSchema |
기본값 |
true |
다중 값 여부 |
아니오 |
사용할 수 있는 값 |
true |
false |
21. SELECT 구문의 기본 SQL을 생성할 때 스키마 이름을 사용
SELECT 구문의 기본 SQL을 생성할 때 스키마 이름을 테이블 이름과 함께 사용할지 여부를 지정합니다.
예) 스키마 이름이 BIZ 이고, 테이블 이름이 EMPLOYEE 인 경우
-
값이 true 일 때 : BIZ.EMPLOYEE
-
값이 false 일 때 : EMPLOYEE
속성 | 설명 |
---|---|
키 |
defaultSql.select.appendSchema |
기본값 |
false |
다중 값 여부 |
아니오 |
사용할 수 있는 값 |
true |
false |
22. INSERT 구문의 기본 SQL을 생성할 때 스키마 이름을 사용
INSERT 구문의 기본 SQL을 생성할 때 스키마 이름을 테이블 이름과 함께 사용할지 여부를 지정합니다.
예) 스키마 이름이 BIZ 이고, 테이블 이름이 EMPLOYEE 인 경우
-
값이 true 일 때 : BIZ.EMPLOYEE
-
값이 false 일 때 : EMPLOYEE
속성 | 설명 |
---|---|
키 |
defaultSql.insert.appendSchema |
기본값 |
false |
다중 값 여부 |
아니오 |
사용할 수 있는 값 |
true |
false |
23. UPDATE 구문의 기본 SQL을 생성할 때 스키마 이름을 사용
UPDATE 구문의 기본 SQL을 생성할 때 스키마 이름을 테이블 이름과 함께 사용할지 여부를 지정합니다.
예) 스키마 이름이 BIZ 이고, 테이블 이름이 EMPLOYEE 인 경우
-
값이 true 일 때 : BIZ.EMPLOYEE
-
값이 false 일 때 : EMPLOYEE
속성 | 설명 |
---|---|
키 |
defaultSql.update.appendSchema |
기본값 |
false |
다중 값 여부 |
아니오 |
사용할 수 있는 값 |
true |
false |
24. DELETE 구문의 기본 SQL을 생성할 때 스키마 이름을 사용
DELETE 구문의 기본 SQL을 생성할 때 스키마 이름을 테이블 이름과 함께 사용할지 여부를 지정합니다.
예) 스키마 이름이 BIZ 이고, 테이블 이름이 EMPLOYEE 인 경우
-
값이 true 일 때 : BIZ.EMPLOYEE
-
값이 false 일 때 : EMPLOYEE
속성 | 설명 |
---|---|
키 |
defaultSql.delete.appendSchema |
기본값 |
false |
다중 값 여부 |
아니오 |
사용할 수 있는 값 |
true |
false |
25. MERGE 구문의 기본 SQL을 생성할 때 스키마 이름을 사용
MERGE 구문의 기본 SQL을 생성할 때 스키마 이름을 테이블 이름과 함께 사용할지 여부를 지정합니다.
예) 스키마 이름이 BIZ 이고, 테이블 이름이 EMPLOYEE 인 경우
-
값이 true 일 때 : BIZ.EMPLOYEE
-
값이 false 일 때 : EMPLOYEE
속성 | 설명 |
---|---|
키 |
defaultSql.merge.appendSchema |
기본값 |
false |
다중 값 여부 |
아니오 |
사용할 수 있는 값 |
true |
false |
26. SELECT 구문의 기본 SQL 생성에 컬럼 Alias 를 사용할지 여부
SELECT 구문의 기본 SQL 생성에 컬럼 Alias 를 사용할지 여부를 지정 합니다.
속성 | 설명 |
---|---|
키 |
defaultSql.select.useColumnAlias |
기본값 |
true |
다중 값 여부 |
아니오 |
사용할 수 있는 값 |
true |
false |
27. 기본 SQL을 생성할 때 바인딩 변수를 카멜 표기법으로 사용할지 여부
기본 SQL을 생성할 때 바인딩 변수를 카멜 표기법으로 사용할지 여부를 지정 합니다.
속성 | 설명 |
---|---|
키 |
defaultSql.variableNameAsCamelNotation |
기본값 |
true |
다중 값 여부 |
아니오 |
사용할 수 있는 값 |
true |
false |
28. Default SQL 로 생성되는 SELECT SQL 의 조회 컬럼을 지정된 문자열로 치환
Default SQL 로 생성되는 SELECT SQL 의 조회 컬럼을 지정된 문자열로 치환할 수 있습니다.
값 지정 방법: 컬럼이름=치환할문자
예시)
컬럼이 EMP_ID, USER_NAME, REG_DTM 을 갖는 EMP 테이블에 대해 Default SQL을 생성하면 다음과 같습니다.
SELECT EMP_ID as empId
, USER_NAME as userName
, REG_DTM as regDtm
FROM EMP
이때, 설정에 값이 REG_DTM=SYSDATE 로 등록 되어있다면 생성되는 SQL은 다음과 같습니다.
SELECT EMP_ID as empId
, USER_NAME as userName
, SYSDATE as regDtm
FROM EMP
속성 | 설명 |
---|---|
키 |
defaultSql.columnReplacement.select |
다중 값 여부 |
예 |
사용할 수 있는 값 |
치환 |
SELECT |
|
컬럼 |
29. Default SQL 로 생성되는 INSERT SQL 의 VALUES 컬럼을 지정된 문자열로 치환
Default SQL 로 생성되는 INSERT SQL 의 VALUES 컬럼을 지정된 문자열로 치환할 수 있습니다.
값 지정 방법: 컬럼이름=치환할문자
예시)
컬럼이 EMP_ID, USER_NAME, REG_DTM 을 갖는 EMP 테이블에 대해 Default SQL을 생성하면 다음과 같습니다.
INSERT INTO EMP
(
EMP_ID, USER_NAME, REG_DTM
)
VALUES
(
#{empId}
, #{userName}
, #{regDtm}
)
이때, 설정에 값이 REG_DTM=SYSDATE 로 등록 되어있다면 생성되는 SQL은 다음과 같습니다.
INSERT INTO EMP
(
EMP_ID, USER_NAME, REG_DTM
)
VALUES
(
#{empId}
, #{userName}
, SYSDATE
)
속성 | 설명 |
---|---|
키 |
defaultSql.columnReplacement.insert |
다중 값 여부 |
예 |
사용할 수 있는 값 |
치환 |
INSERT |
|
컬럼 |
30. Default SQL 로 생성되는 UPDATE SQL 의 SET 컬럼을 지정된 문자열로 치환
Default SQL 로 생성되는 MERGE SQL 의 SET, UPDATE 컬럼을 지정된 문자열로 치환할 수 있습니다.
값 지정 방법: 컬럼이름=치환할문자
예시)
컬럼이 EMP_ID, USER_NAME, REG_DTM 을 갖는 EMP 테이블에 대해 Default SQL을 생성하면 다음과 같습니다.
MERGE INTO EMP_ID
USING DUAL ON(
EMP_ID= #{empId}
)
WHEN MATCHED THEN
UPDATE SET
USER_NAME= #{userName}
,REG_DTM= #{regDtm}
WHEN NOT MATCHED THEN
INSERT(
USER_NAME, EMP_ID, REG_DTM
)
VALUES
(
#{userName}, #{empId}, #{regDtm}
)
이때, 설정에 값이 REG_DTM=SYSDATE 로 등록 되어있다면 생성되는 SQL은 다음과 같습니다.
MERGE INTO EMP_ID
USING DUAL ON(
EMP_ID= #{empId}
)
WHEN MATCHED THEN
UPDATE SET
USER_NAME= #{userName}
,REG_DTM= SYSDATE
WHEN NOT MATCHED THEN
INSERT(
USER_NAME, EMP_ID, REG_DTM
)
VALUES
(
#{userName}, #{empId}, SYSDATE
)
속성 | 설명 |
---|---|
키 |
defaultSql.columnReplacement.update |
다중 값 여부 |
예 |
사용할 수 있는 값 |
치환 |
UPDATE |
|
컬럼 |
31. Default SQL 로 생성되는 MERGE SQL 의 SET, UPDATE 컬럼을 지정된 문자열로 치환
Default SQL 로 생성되는 UPDATE SQL 의 SET 컬럼을 지정된 문자열로 치환할 수 있습니다.
값 지정 방법: 컬럼이름=치환할문자
예시)
컬럼이 EMP_ID, USER_NAME, REG_DTM 을 갖는 EMP 테이블에 대해 Default SQL을 생성하면 다음과 같습니다.
UPDATE EMP
SET USER_NAME= #{userName}
,REG_DTM= #{regDtm}
WHERE EMP_ID= #{empId}
이때, 설정에 값이 REG_DTM=SYSDATE 로 등록 되어있다면 생성되는 SQL은 다음과 같습니다.
UPDATE EMP
SET USER_NAME= #{userName}
,REG_DTM= SYSDATE
WHERE EMP_ID= #{empId}
속성 | 설명 |
---|---|
키 |
defaultSql.columnReplacement.merge |
다중 값 여부 |
예 |
사용할 수 있는 값 |
치환 |
MERGE |
|
컬럼 |