명령문 세트 편집

워크벤치를 사용하여 pureQueryXML 파일에 있는 명령문 세트를 편집할 수 있습니다. 명령문을 다른 명령문 세트로 이동하고, 명령문 세트를 새로 작성하며, 명령문 세트를 삭제하고 이름을 바꿀 수 있습니다.

pureQueryXML 파일의 명령문 세트는 사용자가 하나의 분리 수준에 대해 하나의 패키지를 원하는지, 또는 네 개의 분리 수준 각각에 대해 하나의 패키지를 원하는지 여부에 따라 하나 또는 네 개의 DB2® 패키지에 대한 기초를 형성하는 명령문 세트입니다.

처음 pureQueryXML 파일을 편집할 때 파일에 있는 명령문 세트 수는 사용자가 열기 전에 파일에 대한 sqlLimit 옵션의 Default.genProps에 지정하는 값에 따라 결정됩니다. 예를 들어, capture.pdqxml이라고 하는 pureQueryXML 파일로 SQL문을 캡처한다고 가정하십시오. 편집기에서 열기 전에 다음 엔트리를 추가하여 Default.genProps 파일을 편집합니다.

capture.pdqxml = -rootPkgName myPackage -sqlLimit 100

capture.pdqxml에서 300개의 SQL문을 캡처했다고 가정하십시오. 편집을 위해 파일을 열 때 파일이 세 개의 명령문 세트로 나눠지는 것이 보입니다.

-sqlLimit 옵션의 값은 명령문 세트가 포함할 수 있는 최대 명령문 수를 판별합니다. (옵션 값을 100으로 설정해도 Configure 유틸리티는 특정 커서를 참조하는 모든 명령문을 myPackageB에 한꺼번에 보존하여 해당 명령문 세트의 명령문 수가 100을 초과합니다.) 각 세트의 이름은 영문자에서 그 다음 최상위 문자가 추가된(A에서 시작) 루트 패키지 이름입니다.

Configure 유틸리티가 캡처된 모든 SQL문을 단일 명령문 세트에 맞출 수 있으면, 해당 세트의 이름에 접미부를 추가하지 않습니다.

주: DB2 데이터베이스의 경우, pureQuery Runtime은 캡처된 각 명령문의 특수 레지스터 값을 캡처합니다. SQL문을 이동할 때 명령문 세트 특수 레지스터 값이 일치하는지 확인하십시오.
하나의 명령문 세트에서 다른 명령문 세트로 SQL SELECT, UPDATE, INSERT 및 DELETE문 이동
pureQueryXML 파일에 여러 개의 명령문 세트가 있는 경우, 명령문 세트 사이에 SQL문을 끌 수 있습니다. CTRL 키를 누른 상태에서 각각의 명령문을 누른 후 하나의 그룹으로서 대상 명령문으로 끌면 한 번에 여러 명령문을 이동할 수 있습니다.

이름 지정된 커서를 사용하는 명령문 그룹에 속하는 명령문을 이동하려는 경우, 명령문을 선택하여 목표 명령문 세트로 끄십시오. 편집기는 그룹에 있는 다른 명령문을 자동으로 이동합니다.

세트에 있는 명령문 수가 pureQueryXML 파일에 대한 Default.genProps 엔트리의 -sqlLimit 값을 초과하는 경우, pureQueryXML 파일을 저장할 때 다음 두 조치 중 하나가 발생할 수 있습니다.

  • 명령문 세트의 이름이 공백인 경우 편집기는 이름 지정되지 않은 명령문 세트의 명령문을 사용하여 이름 지정된 새 명령문 세트로 재구성합니다. 새 세트의 이름은 pureQueryXML 파일에 대한 현재 루트 패키지 이름을 기초로 합니다. Configure 유틸리티는 루트 패키지 이름에 영문자에서 사용 가능한 다음 문자를 추가합니다.
  • 명령문 세트에 이름이 있는 경우 해당 세트의 SQL문 수는 변경되지 않습니다. -sqlLimit 옵션 값은 적용되지 않습니다.
주: 또한 Configure 유틸리티 옵션 -groupSQLByStrings 및 -groupSQLBySpecialRegisters를 사용하여 편집기가 SQL문을 명령문 세트로 구성하는 방법을 제어할 수 있습니다.
팁: DDL문을 이동할 수 없습니다. 그러나 파일에 DDL문을 포함하는 두 개 이상의 명령문이 있고 사용자가 DDL문을 단일 명령문 세트로 통합하려는 경우, DDL문을 포함하는 명령문 세트의 이름을 제거하십시오. 그런 다음 파일을 저장하십시오.
명령문 세트 작성
편집기의 아무 곳에서나 마우스 오른쪽 단추를 누르고 명령문 세트 새로 작성을 선택하십시오. 편집기는 공백 이름이 있는 명령문 세트를 새로 작성합니다. 다른 명령문 세트의 SQL문을 이 새 명령문 세트로 이동할 수 있습니다.
새 명령문 세트에 이름을 지정하는 방법은 세 가지입니다.
  • 현재 루트 패키지 이름을 기초로 명령문 세트의 이름을 지정하려면, 하나 이상의 명령문을 파일로 이동한 후 그 파일을 저장하십시오. Configure 유틸리티는 두 요소를 기초로 하는 이름을 명령문 세트에 부여합니다.
    • 해당되는 Default.genProps 파일의 -rootPkgName 옵션 값
    • 영문자에서 사용 가능한 다음 문자

    예를 들어, 이미 myPackageA 이름과 다른 이름 myPackageB가 지정된 세트가 있는 파일에서 세트를 작성하는 경우, 새 세트의 이름은 myPackageC입니다. 이미 패키지에 있는 두 세트가 myPackageAA 및 myPackageAB인 경우 새 패키지의 이름은 myPackageAC입니다.

  • 새 루트 패키지 이름을 기초로 명령문 세트의 이름을 지정하려면, 다음 단계를 수행하십시오.
    1. 편집을 위해 Default.genProps 파일을 여십시오.
    2. pureQueryXML 파일에 대한 -rootPkgName의 값을 변경하십시오.
    3. Default.genProps 파일을 저장하십시오. 편집기가 프로젝트의 빌드 여부를 물을 때 아니오를 누르십시오.
    4. pureQueryXML 파일을 저장하십시오.

    Configure 유틸리티는 새 루트 패키지 이름에서 파생되는 이름을 명령문에 부여합니다. pureQueryXML 파일에서 추가 명령문 세트를 작성하는 경우, 루트 패키지 이름을 다시 변경하거나 루트 패키지 이름을 기초로 하지 않는 이름을 부여하지 않는 한, 이름은 루트 패키지 이름으로 구성됩니다.

  • 루트 패키지 이름을 기초로 하지 않는 이름을 명령문 세트에 부여하려면 다음 단계를 수행하십시오.
    1. 명령문 세트의 노드를 마우스로 누르고 새 이름을 입력하십시오. 이름은 파일 내에서 고유해야 하며 사용 중인 데이터베이스에 대해 유효하지 않은 문자를 포함하면 안됩니다. 이름에는 StaticBinder 유틸리티가 명령문 세트에서 작성하는 패키지의 분리 수준을 표시하는 한자리 숫자를 추가하기 위한 스페이스도 있어야 합니다.
    2. pureQueryXML 파일을 저장하십시오.
명령문 세트 삭제
더 이상 필요하지 않거나 비어 있는 명령문 세트를 삭제할 수 있습니다.
  1. 패키지를 마우스 오른쪽 단추로 누르고 명령문 세트 삭제를 선택하십시오. SQL문 설정은 pureQueryXML 파일에서 삭제됩니다.
  2. pureQueryXML 파일을 저장하십시오.
파일에 있는 다른 명령문 세트의 어떤 이름도 변경되지 않습니다. 예를 들어, 파일에 myPackageA - myPackageE 세트가 포함되어 있다고 가정하십시오. 사용자가 myPackageC를 삭제합니다. 이름 myPackageD 및 myPackageE는 myPackageC 및 myPackageD로 변경되지 않습니다.
명령문 세트의 이름 변경
명령문 세트의 이름은 해당 세트에서 발생되는 DB2 패키지의 기본 이름입니다. 예를 들어, 이름이 myPackageA인 세트에서 네 개의 DB2 패키지, myPackageA1, myPackageA2, myPackageA3, myPackageA4가 발생할 수 있습니다. 각각의 숫자는 패키지의 분리 수준을 표시합니다.

명령문 세트의 이름은 두 가지 방법으로 변경할 수 있습니다.

제한사항: DDL문만 포함하는 명령문 세트의 이름은 변경할 수 없습니다.
  • 새 루트 패키지 이름을 기초로 새 이름을 지정하려면, 다음 단계를 수행하십시오.
    1. Default.genProps 파일에 있는 pureQueryXML 파일의 엔트리에서 -rootPkgName 옵션의 값을 편집기가 새 이름을 지정할 때 기초로 할 루트 패키지 이름으로 변경하십시오.
    2. Default.genProps 파일을 저장하십시오. 편집기가 프로젝트의 빌드 여부를 물을 때 아니오를 누르십시오.
    3. pureQueryXML 파일에서, 이름을 변경하려는 명령문 세트마다 마우스 오른쪽 단추를 누르고 명령문 세트 이름 지우기를 선택하십시오.
    4. pureQueryXML 파일을 저장하십시오.

    이름 지정되지 않은 모든 명령문 세트의 SQL문 수가 Default.genProps 파일에 있는 이 파일의 엔트리에서 -sqlLimit 옵션의 값을 초과하는 경우, Configure 유틸리티는 초과 명령문에 대해 두 개 이상의 명령문 세트를 작성합니다. 예를 들어, 이름 지정되지 않은 세트에 150개의 SQL문이 있고 sqlLimit가 125로 설정된 경우, Configure 유틸리티는 두 개의 명령문 세트를 작성하여 원래의 이름 지정되지 않은 명령문 세트를 교체합니다.

  • 하나 이상의 명령문 세트 각각에 대해 새 이름을 입력하려면 다음 단계를 수행하십시오.
    1. pureQueryXML 파일에서, 명령문 세트를 마우스 오른쪽 단추로 누르고 명령문 세트 이름 지우기를 선택하십시오.
    2. 명령문 세트의 노드를 마우스로 누르고 새 이름을 입력하십시오. 이름은 파일 내에서 고유해야 하며 사용 중인 데이터베이스에 대해 유효하지 않은 문자를 포함하면 안됩니다. 이름에는 StaticBinder 유틸리티가 명령문 세트에서 작성하는 패키지의 분리 수준을 표시하는 한자리 숫자를 추가하기 위한 스페이스도 있어야 합니다.
    3. pureQueryXML 파일을 저장하십시오.

피드백