SQL 편집기
SQL ID 페이지의 SQL 편집 기능에 대해 설명합니다.
1. 기본 SQL
테이블을 선택하여 구문 유형에 맞는 SQL을 생성할 수 있습니다.
-
기본 SQL 버튼을 클릭합니다.
-
기본 SQL 대화창에서 사용할 커넥션, 스키마, 테이블 이름 등의 조건을 설정합니다.
-
검색 되는 테이블 목록에서 사용할 테이블을 선택합니다.
-
생성할 SQL 의 구문 유형을 선택합니다.
-
OK 버튼을 클릭합니다.
생성된 SQL 을 확인합니다.
2. Alias
SELECT 구문의 컬럼에 Alias가 지정 되지 않은 경우 자동으로 Alias를 추가할 수 있습니다.
-
Alias 버튼을 클릭합니다.
-
Alias 대화창에서 적용된 내용을 확인하고 OK 버튼을 클릭합니다.
적용된 Alias 를 확인합니다.
3. 페이징
SELECT 구문의 SQL을 페이징 처리용 SQL로 만들 수 있습니다.
3.1. Top-N
Top-N 방식의 SQL은 페이지 번호와 페이지 당 개수를 입력하여 페이지 단위의 데이터를 수집하는 방식입니다. Top-N 방식은 오라클 등 일부 DBMS만 지원합니다.
-
페이징 버튼을 클릭합니다.
-
페이징 대화창에서 Top-N 을 선택 하고 OK 버튼을 클릭합니다.
작성된 SQL의 위아래로 Top-N 방식의 페이징 처리를 위한 SQL이 추가됩니다.
Top-N 방식의 페이징 SQL 에서는 입력 파라미터로 int
타입의 pageNum, pageCount 가 자동으로 추가됩니다. 기존의 파라미터가 이름이 없는 경우에는 파라미터 이름을 지정해야 합니다. 또한 출력 타입도 List 로 지정되어야 합니다.
3.2. Next Key
Next-Key 방식은 조회 조건 값을 입력하여 일정 건수의 데이터를 수집하는 방식입니다. 어플리케이션에서 직접 Next-Key 정보를 입/출력 타입에 설정해주는 별도의 작업이 필요합니다. Order Key 입력란은 ORDER BY절의 Key 필드들을 입력해야 합니다.
-
페이징 버튼을 클릭합니다.
-
페이징 대화창에서 Next-Key 을 선택 하고 OK 버튼을 클릭합니다.
작성된 SQL 의 위아래로 Next-Key 방식의 페이징 처리를 위한 SQL 이 추가됩니다.
Next-Key 방식의 페이징 SQL 에서는 입력 파라미터로 사용된 타입이 next 이름으로 자동으로 추가됩니다. 기존의 파라미터가 이름이 없는 경우에는 파라미터 이름을 지정해야 합니다. 또한 출력 타입도 List 로 지정되어야 합니다. 다음 페이지 조회를 위해서는 자동으로 추가된 next 파라미터에 Next-Key 정보를 어플리케이션에서 설정해주는 작업을 해야 합니다.
4. JDBC 타입
작성된 SQL에 포함된 mybatis 바인딩 변수에 JDBC Type 을 일괄 적용/해제 할 수 있습니다.
SQL의 바인딩 변수에 null 값을 전달하기 위해서는 각 변수마다 #{feduEmpNm, jdbcType=VARCHAR}
과 같이 JDBC Type 을 명시해야 합니다. 이러한 JDBC Type을 일괄 적용/해제 할 수 있습니다.
-
JDBC 타입 버튼을 클릭합니다.
-
SQL 에 작성된 바인딩 변수가 대화창에 목록으로 나타납니다.
-
버튼을 클릭하여 바인딩 변수에 JDBC Type 을 적용합니다.
-
선택 항목 적용: 선택된 항목에 대해 JDBC Type을 적용할 수 있습니다.
-
선택 항목 해제: 선택된 항목에 대해 JDBC Type을 해제할 수 있습니다.
-
모든 항목 적용: 모든 항목에 대해 JDBC Type을 적용할 수 있습니다.
-
모든 항목 적용 해제: 모든 항목에 대해 JDBC Type을 해제할 수 있습니다.
-
-
OK 버튼을 클릭하면 변경사항이 SQL 에 반영됩니다.
6. SQL→IO
작성한 SQL의 실행 결과로 입출력 IO를 생성할 수 있습니다.
-
SQL 을 작성하고 SQL→IO 버튼을 클릭합니다.
-
테스트할 SQL 을 확인합니다. 테스트할 SQL 에 myBatis 에서 사용하는 동적 쿼리가 있는 경우에는 정상적으로 테스트가 되지 않을 수 있습니다.
-
SQL 테스트 버튼을 클릭하면 SQL 을 테스트할 수 있습니다.
SQL 에 바인딩 변수가 있는 경우에 바인딩 변수의 타입과 값을 입력하는 대화창이 열립니다. 여기에서 입력하는 값은 SQL ID의 입력으로 사용됩니다.
-
바인딩 변수의 타입을 선택합니다.
-
바인딩 변수의 값을 입력합니다.
-
OK 버튼을 클릭합니다.
대화창에서 아래 옵션을 선택합니다.
-
입력 타입을 IO 로 생성할 경우 체크 합니다. 해제된 경우에는 IO 로 생성하지 않습니다.
-
입력 IO 의 패키지와 타입의 이름을 지정합니다.
-
입력 IO 에 포함할 필드를 체크합니다. 체크된 항목만 필드로 생성됩니다.
-
생성한 IO 를 SQL ID 의 입력 타입으로 사용할지 여부를 선택합니다. 해제된 경우에는 IO는 생성 되지만 입력 타입에는 추가되지 않습니다.
-
입력 타입의 파라미터 이름이 필요한 경우 이름을 지정합니다.
-
출력 타입으로 생성될 IO 의 패키지와 타입의 이름을 지정합니다.
-
출력 IO 의 패키지와 타입의 이름을 지정합니다.
-
Finish 버튼을 클릭하여 완료합니다.
Yes 를 선택하면 생성되는 IO 와 동일한 위치에 자원이 있는 경우 기존의 파일을 덮어 쓰게 됩니다. 덮어쓰지 않으려면 No 를 선택합니다.
입력/출력에 생성된 IO가 적용된 것을 확인할 수 있습니다.
생성된 IO 파일을 확인합니다.
7. SQL 테스트
작성한 SQL을 실행하고 결과를 확인할 수 있습니다.
-
입력 파라미터의 테스트 값을 클릭하면 테스트 값을 입력할 수 있습니다.
-
SQL 테스트 버튼을 클릭하여 테스트를 수행합니다.
SQL 테스트 수행 결과 뷰어에서 테스트 결과를 확인합니다.
9. 편집기에 마이바티스 바인딩 추가
입력 파라미터를 Drag&Drop 하거나 컨텍스트 메뉴를 통해 SQL 편집기에 바인딩 변수를 추가할 수 있습니다.
-
Drag&Drop 으로 추가하기
-
추가할 파라미터 또는 파라미터의 필드를 선택합니다.
-
선택한 필드를 마우스로 끌어서 원하는 위치로 이동 합니다.
-
원하는 위치에서 마우스를 놓습니다.
-
추가된 바인딩 변수를 확인할 수 있습니다.
-
컨텍스트 메뉴로 추가하기
-
추가할 파라미터 또는 파라미터의 필드를 선택합니다.
-
마우스를 오른쪽 클릭하고 편집기에 마이바티스 바인딩 추가 메뉴를 선택합니다.
-
하위의 메뉴중 하나를 선택합니다.
-
이름만. 예시) #{name} :
#{name}
형태로 바인딩 변수를 추가합니다. -
JDBC 타입 포함. 예시) #{name,jdbcType=VARCHAR} :
#{name,jdbcType=VARCHAR}
형태로 바인딩 변수를 추가합니다.JDBC 타입 포함. 예시) #{name,jdbcType=VARCHAR}로 추가한 경우에는 선택한 필드의 타입과 매핑되는 jdbcType 이 추가됩니다.
-
-
IO를 직접 선택하여 추가하는 경우에는 다음처럼 모든 필드가 한번에 추가됩니다.