Case1. 쿼리 추출 기준, Oracle Dictionary
소스파일을 읽어 쿼리를 추출하는 것까지는 진행을 하였다.
실제 쿼리를 파싱하려면 기준이 있어야 한다.
일반적으로, 쿼리 분석을 위한 추출정보로는 ①테이블 ②컬럼 정보일 것이다.
테이블과 컬럼 정보를 인지하기 위해서는 테이블의 정보들이 필요하다.
이를 얻기 위하여 Oracle Dictionary정보를 이용할 예정이다.
■ 추출할 Dictionary 정보
OWNER |
TABLE_NAME |
COLUMN_NAME |
COMMENTS |
DEV |
MEM_BAS |
MEM_NO |
|
DEV |
MEM_BAS |
MEM_NM |
|
DEV |
MEM_BAS |
BIR_DT |
|
DEV |
MEM_BAS |
SEX_DCD |
|
DEV |
MEM_BAS |
REG_DT |
|
DEV |
MEM_BAS |
CHG_DT |
|
DEV |
MEM_APPR_LST |
MEM_NO |
|
DEV |
MEM_APPR_LST |
SEQ_NO |
|
DEV |
MEM_APPR_LST |
APPR_SCR_CNT |
|
DEV |
MEM_APPR_LST |
APPR_CON |
|
DEV |
MEM_APPR_LST |
REG_DT |
|
DEV |
MEM_APPR_LST |
CHG_DT |
|
■ JDBC Connection을 이용한 Oracle Dictionary 추출
JDBC에 대한 간단한 설명과 샘플의 Java카테고리에 있는 다음의 글을 참고하자.(링크)
( 소스에 이미 있기 때문에 굳이 링크를 따라가서 볼 필요는 없다. - 설명도 부실해서 별 내용 없다 ㅡ_ㅡ; )
JDBC Connection을 이용하여 Oracle Dictionary정보를 조회하고, 결과를 ArrayList<ArrayList<String>> 형태로 받으려고 한다.
테이블 구조가 2차원 배일이기 때문에, 2중 ArrayList구조를 사용하였다.
구현은 별로 함수( Method )로 빼서 진행하였다.
다음은 main함수에서 호출하는 부분이다.
정상적으로 결과가 왔는지를 확인하기 위해 일시적으로 결과를 출력하는 라인을 넣었다. ( 삭제 예정 )
JDBC를 이용하여 조회한 결과이다.
끝.
'Study > Java' 카테고리의 다른 글
Case1. Query를 String Buffer에 저장하기. (0) | 2018.10.31 |
---|---|
Case1. 쿼리의 시작과 종료위치 찾기 (0) | 2018.10.30 |
JDBC를 이용한 Oracle DB접속하기 (0) | 2018.10.28 |
Case1. 쿼리 파일 읽기 (0) | 2018.10.28 |
Case1. 작업 대상 : SELECT 쿼리 (0) | 2018.10.28 |