DB 쿼리 클라이언트를 사용하여 SQL 쿼리 실행

시스템 구현자 (SI) 는 IBM DB Query Client를 사용하여 테스트, 개발 및 문제점 해결을 위해 요청 시 원격 데이터베이스를 안전하게 조회할 수 있습니다. SI는 SQL 조회를 실행하고, 조회를 내보내고, 마지막으로 실행된 조회를 보고, 조회 결과를 내보낼 수 있습니다.

데이터베이스에 압축된 데이터가 포함되어 있는 경우, DB 쿼리 클라이언트는 압축된 데이터의 압축을 풀고 결과에 표시하거나 데이터를 내보냅니다.

시작하기 전에

  • HTML5를 완전히 지원하는 브라우저를 사용하십시오.
  • Microsoft Internet Explorer의 경우, DB Query Client는 Internet Explorer, 버전 11에서 지원됩니다. 따라서 에뮬레이션을 11또는 10보다 큰 값으로 설정해야 합니다.
    에뮬레이션을 설정하려면 다음 단계를 완료하십시오.
    1. Internet Explorer에서 F12 키를 누르고 DB 쿼리 클라이언트에 로그인한 후 개발자 도구를 여십시오.
    2. 에뮬레이션 을 클릭하고 문서 모드를 11이상으로 선택하십시오.
    3. DB 쿼리 클라이언트로 리턴합니다. 이제 조회 결과에 대해 페이지 매김을 사용할 수 있습니다.
    이미 열려 있는 경우 개발자 도구를 닫지 마십시오. 백그라운드에서 실행되도록 하십시오.

프로시저

DB 쿼리 클라이언트에서 SQL 쿼리를 실행하려면 다음 단계를 완료하십시오.

  1. 다음 URL을 사용하여 DB Query Client를 시작하십시오.
    https://<hostname:port>/smcfs/yfshttpdbi/sterlingdbqueryclient.jsp
  2. 사용자 ID비밀번호를 입력하십시오. 사용자 인증은 현재 세션이 만료되거나 현재 세션이 닫힐 때까지 유효합니다. 현재 브라우저 세션이 만료되면 로그인 신임 정보를 입력하고 동일한 페이지에서 조회를 실행할 수 있습니다.
  3. SQL 조회 입력에 SQL 조회를 입력하고 조회 실행을 클릭하십시오.

    행 수 필드에서 페이지당 표시할 행 수를 지정하십시오. 기본적으로 값은 100으로 설정됩니다. 더 큰 값을 입력하면 페이지 매김이 자동으로 사용으로 설정됩니다. 페이지당 표시할 최대 10000행값을 지정할 수 있습니다.

    • DISTINCTSELECT 절과 함께 사용될 때마다 컬럼별로 쿼리 결과의 순서를 지정하십시오.
    • DISTINCT 에서는 다음 조회를 실행할 수 있습니다.
      select distinct <organization_code> from yfs_item where 1=1;
      참고: 1차 키 열이 선택되지 않은 DISTINCT 조회의 경우 페이지 매김이 지원되지 않습니다. 기본적으로 값은 100으로 설정됩니다. 그러나 더 많은 레코드를 보려면 페이지 크기를 늘리십시오. 최대 10000개의 레코드를 표시할 수 있습니다.
    • UNION, INTERSECT또는 WITH 절과 같은 집계 함수를 포함하는 쿼리는 페이지 매김에서 지원되지 않습니다. 이러한 조회는 페이지 번호가 지정되지 않은 모드에서 실행됩니다. 그러나 더 많은 레코드를 보려면 페이지 크기를 최대 한계인 10000개의 레코드로 늘리십시오.
    참고:
    • 민감하거나 관련이 없는 데이터를 포함하거나 비즈니스 데이터를 포함하지 않는 테이블은 조회할 수 없습니다.
    • 테이블을 수정하는 조회를 실행할 수 없습니다.
    일부 샘플 조회는 다음과 같습니다.
    
    select * from yfs_resource fetch first 10 rows only;
    select * from yfs_resource_permission fetch first 10 rows only;
    select * from yfs_user fetch first 10 rows only;
    • 1차가 아닌 컬럼으로 결과를 정렬하기 위한 테이블을 조회합니다. 예를 들면 다음과 같습니다.
      select * from yfs_user order by loginid fetch first 10 rows only;
    • 서브쿼리를 사용하여 조인을 작성하십시오. 예를 들면 다음과 같습니다.
      
      select u.user_key, ug.USERGROUP_KEY, u.loginid, ug. USERGROUP_NAME from (SELECT * FROM
      omdb.YFS_USER)  as u RIGHT OUTER JOIN (SELECT * FROM omdb.YFS_USER_GROUP) as ug ON
      u.USERGROUP_KEY = ug.USERGROUP_KEY fetch first 10 rows only;
    • 열 별명 조회 사용. 예를 들면 다음과 같습니다. select order_no as Docket from yfs_order_header;

    • describe 문을 사용하여 테이블에서 인덱스 정보를 검색 하십시오. 예를 들어, describe table YFS_USER;입니다. 이 쿼리는 데이터 유형, 널 (NULL) 또는 널 (NULL) 아님과 같은 기본 테이블 스키마 세부사항만 리턴하며 인덱스 정보는 리턴하지 않습니다. 그러나 describe indexes for table YFS_USER 를 실행하여 테이블의 인덱스 세부사항을 검색할 수 있습니다.

    • SYSCAT 스키마에서 테이블 조회. SYSCAT 스키마에서 다음 테이블을 쿼리할 수 있습니다.
      • SCHEMATA
      • TABLES-이 테이블을 쿼리하는 동안 tabschema = 'OMDB' 인 WHERE 절을 추가하는 것이 좋습니다.
      • VIEWS-이 테이블을 조회하는 동안 viewschema = 'OMDB' 인 WHERE 절을 추가하는 것이 좋습니다.
      • COLUMNS-이 테이블을 쿼리하는 동안 tabschema = 'OMDB' 인 WHERE 절을 추가하는 것이 좋습니다.
      • INDEXES-이 테이블을 쿼리하는 동안 tabschema = 'OMDB' 인 WHERE 절을 추가하는 것이 좋습니다.
      • TABCONST-이 테이블을 쿼리하는 동안 tabschema = 'OMDB' 인 WHERE 절을 추가하는 것이 좋습니다.

      기본적으로 페이지 번호가 지정되지 않은 모드에서는 처음 100개의 레코드만 표시됩니다. 더 많은 레코드를 표시하려면 DB 쿼리 클라이언트에서 표시할 총 레코드 수를 지정하십시오.

    조회를 실행하는 대체 방법
    • 이전에 실행한 모든 조회를 보려면 마지막 실행 조회 를 클릭하십시오. 이전에 실행된 마지막 100개의 조회가 저장되고 페이지당 10개의 조회가 표시됩니다. 목록에서 조회를 실행할 수 있습니다.
    • 조회 검색 필드에 조회 키워드 또는 테이블 이름과 같은 적절한 용어를 입력하여 조회를 찾고 조회 실행을 클릭하십시오. 예를 들어, 검색 용어는 YFS_USER, SELECT가 될 수 있습니다. 또는 목록을 스크롤하고 다음 또는 이전 을 클릭하여 조회를 찾을 수 있습니다.
    • 조회 가져오기 및 실행.
    참고:
    • 세미콜론으로 조회를 종료하지 않으면 내부적으로 추가됩니다.
    • 기본적으로 페이지 매김은 사용으로 설정되어 있습니다. 특정 조회에 문제가 발생하면 페이지 매김이 자동으로 사용 안함으로 설정되고 입력된 행 수에 따라 조회 결과가 표시됩니다.
    • 일시적인 데이터베이스 연결 문제가 있는 경우 도구는 데이터베이스에 연결하기 위해 세 번 재시도합니다. 실패하면 적절한 메시지가 표시됩니다.
    • 조회 제한시간은 2분입니다.
    결과:
    • 프로덕션 환경에서 최적의 성능을 보장하기 위해 CLOB 컬럼이 있는 쿼리에 대해 처음 100개행만 표시됩니다.
    • CLOB 컬럼이 있는 SQL 쿼리의 경우 최대 100개의 레코드가 표시되며 익스포트할 수 있습니다.
    • BLOB 컬럼은 결과 페이지에 2진 오브젝트의 문자열 값을 표시하는 대신 --BLOB Data-- 로 출력에 표시됩니다.
    • 이 도구는 정확한 SQL 오류 코드를 리턴하여 사용자가 쿼리의 잘못된 내용을 이해할 수 있도록 합니다. 예를 들어, select * from YFS_USER_DETAILS를 실행하면 도구가 다음 오류 메시지를 리턴합니다.
      조회 실행 중에 예외가 발생했습니다. 조회 구문/서버 로그를 확인하십시오.
      "OMDB.YFS_USER_DETAILS" 은 (는) 정의되지 않은 이름입니다. SQLCODE=-204, SQLSTATE=42704, DRIVER=3.69.49
  4. 선택사항: 기본적으로 숫자를 텍스트로 내보내기 (Microsoft Excel에서 보는 경우에만) 선택란이 선택되어 있습니다. 조회 결과를 CSV 파일로 내보내려면 선택란을 선택 취소한 후 내보내기를 클릭하십시오. 조회 결과를 .csv로 내보냅니다. 예를 들어, queryResult--2020-8-5-13-19-19.csv입니다.

    CSV 파일에서 긴 숫자는 지수 형식으로 표시됩니다. 예를 들어, 123456789012345678901.23457E+19로 표시됩니다.

    조회 결과를 읽기 전용 CSV 파일로 내보내려면 숫자를 텍스트로 내보내기 (Microsoft Excel에서 보는 경우에만) 선택란을 선택하십시오. 예를 들어, queryResult--2020-8-5-13-19-19_view-only-on-ms-excel.csv입니다.

    CSV 파일은 Microsoft Excel에서만 열 수 있습니다. 내보낸 CSV 파일에서는 Microsoft Excel에서 전체 숫자가 텍스트로 표시되도록 11자리보다 큰 숫자에 대해 어포스트로피 (') 가 접두부로 붙습니다. 그러나 11자리미만의 숫자는 정수로 표시되며 어포스트로피를 포함하지 않습니다. 선행 영 (0) 이 포함된 숫자의 경우 Microsoft Excel은 영 (0) 을 자르고 숫자만 표시합니다. 예를 들어, "0001" 은 "1" 로 표시됩니다.

다음 수행 작업

다음 단계를 완료하여 Microsoft Excel에서 읽기 전용 CSV 파일을 여십시오.
  1. Microsoft Excel을 여십시오.
  2. 데이터 메뉴에서 텍스트에서 > 가져오기를 클릭하십시오.
  3. 데이터 유형을 구분으로 선택하십시오.
  4. 파일 원본 목록에서 유니코드 (UTF-8) 를 선택하십시오.
  5. 구분 기호를 쉼표로 선택하십시오.
  6. 완료를 누르십시오.