jdbc 쪽 작업을 하다보면 쿼리를 정해진 포멧에 맞춰서 변경을 해줘야 하는 경우가 많다.
물론 간단한 쿼리는 아래와 같이 작업이 가능할것이다.
PreparedStatement pstmt = conn.prepareStatement("SELECT * FROM TABLE");
하지만 현업에서 쓰는 쿼리들은 많은 조인과 개행으로 인해 엄청 긴 쿼리들이 많다.
개행이 들어간 쿼리를 그대로 사용할 수 없는문제와 가독성의 이슈가 있어
보통 아래와 같이 StringBuffer를 통해 먼저 SQL을 인스턴스에 저장한 후 prepareStatement에 쿼리를 전달하여 실행을 한다
StringBuffer buf_OUTPUT_01 = new buf_OUTPUT_01();
//쿼리(500줄이라 가정)
buf_OUTPUT_01.append(" SELECT * ");
buf_OUTPUT_01.append(" FROM EMP ");
buf_OUTPUT_01.append(" WHERE ... ");
...
//Selet 변수에 저장
String Select = buf_OUTPUT_01.toString();
pstmt = con.prepareStatement(Select);
문제는 위와 같이 buf_OUTPUT_01.append(" 쿼리 "); 형태로 한줄 한줄 변경하기엔 유저에게 부담이 매우 크다.
토드에서는 이러한 부담을 줄여주는 기능이 있는데, 그게 바로 코드 어시스트(Code Assist) 이다
view - Toad option을 먼저 실행해준다
그리고 메뉴에서 Editor - Code Assist를 클릭해준다
그리고 화면 내에 Make Code 가 보일텐데 최초에는 빈 리스트로 보일 것이다
Add를 눌러 jdbc를 위한 코드 포멧을 지정해준다
--------------------속성--------------------
Name : JSP (사용자가 편의에 맞게 정의)
Quote Character : "
Escape Character : \
--------------------변경포멧--------------------
{ JAVA Language Template }
buf_OUTPUT_01.append(" %SqlText% ");
buf_OUTPUT_01.append(" %SqlTextNext% ");
위와 같이 입력후 ok 누르면 적용 끝
잘 적용이 됐는지 확인해보기위해 테스트를 해보자
1.토드 내의 특정 SQL을 블록 지정한 다음 위의 아이콘을 눌러주거나, 단축키 ctlr+m
2.편집할 에디트 창에 붙여넣기(ctrl+v)
buf_OUTPUT_01.append(" SELECT * ");
buf_OUTPUT_01.append(" FROM EMP ");
3.위와 같이 원하는 형태로 변환된 스크립트가 복사 되면 성공
반대로 스크립트 → 일반 쿼리 형태로 변형하려면
buf_OUTPUT_01.append(" SELECT * ");
buf_OUTPUT_01.append(" FROM EMP ");
1.위와 같이 변경하고자 하는 스크립트를 블록지정
2.위의 캡쳐본처럼 아이콘 클릭 또는 단축키(ctrl + p)를 눌러준다
'오라클(DB) > 기초' 카테고리의 다른 글
토드 설치 (0) | 2020.02.02 |
---|---|
오라클 설치 (0) | 2020.02.02 |
DB vs 파일시스템 (0) | 2019.08.31 |