AWS Schema Conversion Tool를 사용하여 C++ 애플리케이션의 SQL 코드 변환
Oracle에서 PostgreSQL로 변환하는 경우 AWS SCT를 사용하면 C++ 애플리케이션에 포함된 SQL 코드를 변환할 수 있습니다. 이 특정 C++ 애플리케이션 변환기는 애플리케이션 로직을 이해합니다. 또한 이 변환기는 함수, 파라미터, 로컬 변수 등과 같은 다양한 애플리케이션 객체에 있는 명령문을 수집합니다.
이러한 심층 분석 덕분에 C++ 애플리케이션 SQL 코드 변환기는 일반 변환기보다 더 나은 변환 결과를 제공합니다.
AWS SCT에서 C++ 애플리케이션 변환 프로젝트 생성
Oracle 데이터베이스 스키마를 PostgreSQL 데이터베이스 스키마로 변환하기 위한 C++ 애플리케이션 변환 프로젝트를 생성할 수 있습니다. 소스 Oracle 스키마와 대상 PostgreSQL 데이터베이스를 포함하는 매핑 규칙을 프로젝트에 추가해야 합니다. 자세한 내용은 AWS Schema Conversion Tool에서 데이터 유형 매핑 단원을 참조하십시오.
단일 AWS SCT 프로젝트에 여러 애플리케이션 변환 프로젝트를 추가할 수 있습니다.
C++ 애플리케이션 변환 프로젝트를 생성하려면
-
데이터베이스 변환 프로젝트를 만들고 소스 Oracle 데이터베이스를 추가합니다. 자세한 내용은 AWS SCT에서 프로젝트 시작 및 관리 및 AWS SCT의 프로젝트에 서버 추가 단원을 참조하세요.
-
소스 Oracle 데이터베이스와 대상 PostgreSQL 데이터베이스를 포함하는 매핑 규칙을 추가합니다. 매핑 규칙에 대상 PostgreSQL 데이터베이스를 추가하거나 가상 PostgreSQL 대상 데이터베이스 플랫폼을 사용할 수 있습니다. 자세한 내용은 AWS Schema Conversion Tool에서 데이터 유형 매핑 및 AWS Schema Conversion Tool에서 가상 대상에 매핑 단원을 참조하세요.
-
보기 메뉴에서 Main view를 선택합니다.
-
애플리케이션 메뉴에서 New C++ application을 선택합니다.
Creating a C++ application conversion project 대화 상자가 나타납니다.
-
이름에 C++ 애플리케이션 변환 프로젝트의 이름을 입력합니다. 각 데이터베이스 스키마 변환 프로젝트에는 하위 애플리케이션 변환 프로젝트가 하나 이상 있을 수 있으므로 여러 프로젝트를 추가할 경우 적합한 이름을 선택합니다.
-
위치에 애플리케이션의 소스 코드 위치를 입력합니다.
-
소스 트리에서 애플리케이션이 사용하는 스키마를 선택합니다. 이 스키마는 매핑 규칙에 속해야 합니다. AWS SCT는 매핑 규칙에 속하는 스키마를 굵게 강조 표시합니다.
-
확인을 선택하여 C++ 애플리케이션 변환 프로젝트를 생성합니다.
-
왼쪽 패널의 애플리케이션 노드에서 C++ 애플리케이션 변환 프로젝트를 찾습니다.
AWS SCT에서 C++ 애플리케이션 SQL 코드 변환
AWS SCT 프로젝트에 C++ 애플리케이션을 추가한 후 이 애플리케이션의 SQL 코드를 대상 데이터베이스 플랫폼과 호환되는 형식으로 변환합니다. 다음 절차를 사용하여 AWS SCT에서 C++ 애플리케이션에 포함된 SQL 코드를 분석하고 변환할 수 있습니다.
SQL 코드를 변환하려면
왼쪽 패널의 애플리케이션에서 C++ 노드를 확장하고 변환할 애플리케이션을 선택합니다.
-
Source Oracle application project에서 설정을 선택합니다. 선택한 C++ 애플리케이션의 변환 설정을 검토하고 편집합니다. 또한 AWS SCT 프로젝트에 추가한 모든 C++ 애플리케이션의 변환 설정을 지정할 수 있습니다. 자세한 내용은 C++ 애플리케이션 변환 프로젝트 관리 단원을 참조하십시오.
-
컴파일러 유형에서 C++ 애플리케이션의 소스 코드에 사용할 컴파일러를 선택합니다. AWS SCT는 Microsoft Visual C++, GCC(GNU Compiler Collection) 및 Clang과 같은 C++ 컴파일러를 지원합니다. 기본 옵션은 Microsoft Visual C++입니다.
-
User-defined macros에 C++ 프로젝트의 사용자 정의 매크로가 포함된 파일의 경로를 입력합니다. 이 파일이
#define name value
구조인지 확인합니다. 앞의 예와 마찬가지로,value
는 선택적 파라미터입니다. 이 선택적 파라미터의 기본값은1
입니다.이 파일을 생성하려면 Microsoft Visual Studio에서 프로젝트를 열고 프로젝트, 속성, C/C++ 및 프리프로세서를 선택합니다. Preprocessor definitions에서 편집을 선택하고 이름 및 값을 새 텍스트 파일에 복사합니다. 그런 다음 파일의 각 문자열에 접두사
#define
을 추가합니다. -
External include directories에 C++ 프로젝트에서 사용할 외부 라이브러리가 포함된 폴더의 경로를 입력합니다.
왼쪽 창에서 변환할 애플리케이션을 선택하고 컨텍스트(마우스 오른쪽 버튼 클릭) 메뉴를 엽니다.
-
변환을 선택합니다. AWS SCT가 소스 코드 파일을 분석하고, 애플리케이션 로직을 결정한 후 코드 메타데이터를 프로젝트에 로드합니다. 이 코드 메타데이터에는 C++ 클래스, 객체, 메서드, 전역 변수, 인터페이스 등이 포함됩니다.
AWS SCT는 대상 데이터베이스 패널에서 소스 애플리케이션 프로젝트와 유사한 폴더 구조를 만듭니다. 다음과 같이 변환된 애플리케이션 코드를 검토할 수 있습니다.
-
변환된 애플리케이션 코드를 저장합니다. 자세한 내용은 변환된 애플리케이션 코드 저장 단원을 참조하십시오.
AWS SCT를 사용하여 변환된 애플리케이션 코드 저장
다음 절차에 따라 변환된 애플리케이션 코드를 저장합니다.
변환된 애플리케이션 코드를 저장하려면
-
대상 데이터베이스 패널의 애플리케이션에서 C++ 노드를 확장합니다.
-
변환된 애플리케이션을 선택하고 저장을 선택합니다.
-
변환된 애플리케이션 코드를 저장할 폴더의 경로를 입력하고 폴더 선택을 선택합니다.
AWS SCT에서 C++ 애플리케이션 변환 프로젝트 관리
여러 C++ 애플리케이션 변환 프로젝트를 추가하거나, 변환 설정을 편집하거나, C++ 애플리케이션 코드를 업데이트하거나, AWS SCT 프로젝트에서 C++ 변환 프로젝트를 제거할 수 있습니다.
C++ 애플리케이션 변환 프로젝트를 더 추가하려면
왼쪽 패널에서 애플리케이션 노드를 확장합니다.
C++ 노드를 선택하고 컨텍스트(마우스 오른쪽 버튼 클릭) 메뉴를 엽니다.
새 애플리케이션(New application)을 선택합니다.
새 C++ 애플리케이션 변환 프로젝트를 생성하는 데 필요한 정보를 입력합니다. 자세한 내용은 C++ 애플리케이션 변환 프로젝트 생성 단원을 참조하십시오.
AWS SCT 프로젝트의 모든 C++ 애플리케이션 변환 프로젝트에 대한 변환 설정을 지정할 수 있습니다.
모든 C++ 애플리케이션의 변환 설정을 편집하려면
-
설정 메뉴에서 프로젝트 설정을 선택한 다음 Application conversion을 선택합니다.
-
컴파일러 유형에서 C++ 애플리케이션의 소스 코드에 사용할 컴파일러를 선택합니다. AWS SCT는 Microsoft Visual C++, GCC(GNU Compiler Collection) 및 Clang과 같은 C++ 컴파일러를 지원합니다. 기본 옵션은 Microsoft Visual C++입니다.
-
User-defined macros에 C++ 프로젝트의 사용자 정의 매크로가 포함된 파일의 경로를 입력합니다. 이 파일이
#define name value
구조인지 확인합니다. 앞의 예와 마찬가지로,value
는 선택적 파라미터입니다. 이 선택적 파라미터의 기본값은1
입니다.이 파일을 생성하려면 Microsoft Visual Studio에서 프로젝트를 열고 프로젝트, 속성, C/C++ 및 프리프로세서를 선택합니다. Preprocessor definitions에서 편집을 선택하고 이름 및 값을 새 텍스트 파일에 복사합니다. 그런 다음 파일의 각 문자열에 접두사
#define
을 추가합니다. -
External include directories에 C++ 프로젝트에서 사용할 외부 라이브러리가 포함된 폴더의 경로를 입력합니다.
-
확인을 선택하여 프로젝트 설정을 저장하고 창을 닫습니다.
또는 각 C++ 애플리케이션 변환 프로젝트의 변환 설정을 지정할 수 있습니다. 자세한 내용은 C++ 애플리케이션 SQL 코드 변환 단원을 참조하십시오.
소스 애플리케이션 코드를 변경한 후 AWS SCT 프로젝트로 업로드합니다.
업데이트된 애플리케이션 코드를 업로드하려면
왼쪽 패널의 애플리케이션에서 C++ 노드를 확장합니다.
업데이트할 애플리케이션을 선택하고 컨텍스트(마우스 오른쪽 버튼 클릭) 메뉴를 엽니다.
새로 고침을 선택한 다음, 예를 선택합니다.
AWS SCT가 소스 파일의 애플리케이션 코드를 업로드하고 변환 결과를 제거합니다. AWS SCT에서 변경된 코드와 변환 결과를 유지하려면 새 C++ 변환 프로젝트를 만듭니다.
또한 AWS SCT가 선택된 애플리케이션에 지정된 애플리케이션 변환 설정을 제거합니다. 업데이트된 애플리케이션 코드를 업로드하면 AWS SCT가 프로젝트 설정의 기본값을 적용합니다.
C++ 애플리케이션 변환 프로젝트를 제거하려면
왼쪽 패널의 애플리케이션에서 C++ 노드를 확장합니다.
제거할 애플리케이션을 선택하고 컨텍스트(마우스 오른쪽 버튼 클릭) 메뉴를 엽니다.
삭제를 선택한 다음, 확인을 선택합니다.
AWS SCT에서 C++ 애플리케이션 변환 평가 보고서 생성
C++ 애플리케이션 변환 평가 보고서는 C++ 애플리케이션에 포함된 SQL 코드를 대상 데이터베이스와 호환되는 형식으로 변환하는 방법에 대한 정보를 제공합니다. 평가 보고서는 모든 SQL 실행 지점과 모든 소스 코드 파일에 대한 변환 세부 정보를 제공합니다. 평가 보고서에는 AWS SCT에서 변환할 수 없는 SQL 코드에 대한 작업 항목도 포함되어 있습니다.
C++ 애플리케이션 변환 평가 보고서를 생성하려면
왼쪽 패널의 애플리케이션에서 C++ 노드를 확장합니다.
변환할 애플리케이션을 선택하고 컨텍스트(마우스 오른쪽 버튼 클릭) 메뉴를 엽니다.
변환을 선택합니다.
보기 메뉴에서 Assessment report view를 선택합니다.
-
요약 탭을 검토합니다.
요약 탭에는 C++ 애플리케이션 평가 보고서의 요약 정보가 표시됩니다. 또한 모든 SQL 실행 지점과 모든 소스 코드 파일에 대한 변환 결과를 보여줍니다.
Save statements to JSON을 선택하여 Java 애플리케이션에서 추출된 SQL 코드를 JSON 파일로 저장합니다.
-
(선택 사항) 보고서의 로컬 사본을 PDF 파일 또는 쉼표로 구분된 값(CSV) 파일로 저장합니다.
-
오른쪽 상단에서 Save to PDF를 선택하여 보고서를 PDF 파일로 저장합니다.
PDF 파일에는 애플리케이션 변환에 대한 요약 정보, 작업 항목 및 권장 사항이 포함되어 있습니다.
-
오른쪽 상단에서 Save to CSV를 선택하여 보고서를 CSV 파일로 저장합니다.
CSV 파일에는 SQL 코드 변환에 필요한 작업 항목, 권장 작업 및 예상 수작업의 복잡성 등이 포함되어 있습니다.
-