本文属于机器翻译版本。若本译文内容与英语原文存在差异,则一律以英文原文为准。
使用 C++ 应用程序转换SQL代码 AWS Schema Conversion Tool
对于 Oracle 到 Postgre 的SQL转换,您可以使用 AWS SCT 转换嵌入到 C++ 应用程序中的SQL代码。这个特定的 C++ 应用程序转换器了解应用程序逻辑。它收集位于不同应用程序对象中的语句,例如函数、参数、局部变量等。
由于这种深入的分析,C++ 应用程序SQL代码转换器比通用转换器提供了更好的转换结果。
在中创建 C++ 应用程序转换项目 AWS SCT
只能为将 Oracle 数据库架构转换为 Postg SQL re 数据库架构创建 C++ 应用程序转换项目。确保在项目中添加包含源 Oracle 架构和目标 Postgre SQL 数据库的映射规则。有关更多信息,请参阅 映射中的数据类型 AWS Schema Conversion Tool。
您可以在单个 AWS SCT 项目中添加多个应用程序转换项目。
创建 C++ 应用程序转换项目
-
创建数据库转换项目,然后添加源 Oracle 数据库。有关更多信息,请参阅在中启动和管理项目 AWS SCT 和将服务器添加到项目中 AWS SCT。
-
添加包含您的源 Oracle 数据库和目标 Postg SQL re 数据库的映射规则。您可以添加目标 Postgre SQL 数据库或在映射规则中使用虚拟 Postgre SQL 目标数据库平台。有关更多信息,请参阅映射中的数据类型 AWS Schema Conversion Tool 和映射到中的虚拟目标 AWS Schema Conversion Tool。
-
在视图菜单上,选择主视图。
-
在应用程序菜单上,选择新建 C++ 应用程序。
随即出现创建 C++ 应用程序转换项目对话框。
-
对于名称,输入 C++ 应用程序转换项目名称。每个数据库架构转换项目都可以有一个或多个子应用程序转换项目,因此如果您添加多个项目的话,请选择一个有意义的名称。
-
对于位置,输入您的应用程序源代码的位置。
-
在源树状图中,选择应用程序所用的架构。确保此架构是映射规则的一部分。 AWS SCT 以粗体突出显示作为映射规则一部分的架构。
-
选择确定以创建 C++ 应用程序转换项目。
-
在左侧面板的应用程序节点中找到您的 C++ 应用程序转换项目。
转换您的 C++ 应用程序SQL代码 AWS SCT
将 C++ 应用程序添加到 AWS SCT 项目后,将此应用程序中的SQL代码转换为与目标数据库平台兼容的格式。使用以下步骤分析和转换中嵌入在 C++ 应用程序中的SQL代码 AWS SCT。
转换您的SQL代码
展开左侧面板中应用程序下的 C++ 节点,然后选择要转换的应用程序。
-
在源 Oracle 应用程序项目中,选择设置。查看和编辑所选 C++ 应用程序的转换设置。您还可以为添加到 AWS SCT 项目中的所有 C++ 应用程序指定转换设置。有关更多信息,请参阅 管理 C++ 应用程序转换项目。
-
对于编译器类型,请选择用于 C++ 应用程序源代码的编译器。 AWS SCT 支持以下 C++ 编译器:微软 Visual C++ GCC 、GNU编译器集合和 Cl ang。默认选项是 Microsoft Visual C++。
-
对于用户定义的宏,请输入包含来自 C++ 项目的用户定义宏的文件路径。确保该文件具有以下结构:
#define name value
。在上述示例中,value
是可选参数。此可选参数的默认值为1
。要创建此文件,请在 Microsoft Visual Studio 中打开项目,然后选择项目、属性、C/C++ 和预处理器。对于预处理器定义,选择编辑,然后将名称和值复制到新的文本文件中。然后,为文件中的每个字符串添加以下前缀:
#define
。 -
对于外部包含目录,请输入包含您在 C++ 项目中使用的外部库的文件夹的路径。
在左窗格中,选择要转换的应用程序,然后打开上下文(右键单击)菜单。
-
选择 “转换”。 AWS SCT 分析您的源代码文件,确定应用程序逻辑,并将代码元数据加载到项目中。此代码元数据包括 C++ 类、对象、方法、全局变量、接口等。
在目标数据库面板中, AWS SCT 创建与源应用程序项目相似的文件夹结构。您可以在此查看转换后的应用程序代码,如下所示。
-
保存转换后的应用程序代码。有关更多信息,请参阅 保存转换后的应用程序代码。
使用 AWS SCT保存转换后的应用程序代码
使用以下过程保存转换后的应用程序代码。
保存转换后的应用程序代码
-
展开目标数据库面板中应用程序 下的 C++ 节点。
-
选择转换后的应用程序,然后选择保存。
-
输入保存转换后的应用程序代码的文件夹路径,然后选择选择文件夹。
在中管理 C++ 应用程序转换项目 AWS SCT
您可以添加多个 C++ 应用程序转换项目、编辑转换设置、更新 C++ 应用程序代码或从项目中删除 C++ 转换 AWS SCT 项目。
添加其他 C++ 应用程序转换项目
展开左侧面板中的应用程序节点。
选择 C++ 节点,然后打开上下文(右键单击)菜单。
选择 New application(新建应用程序)。
输入创建新的 C++ 应用程序转换项目所需的信息。有关更多信息,请参阅 创建 C++ 应用程序转换项目。
您可以为项目中的所有 C++ 应用程序转换项目指定转换设置。 AWS SCT
编辑所有 C++ 应用程序的转换设置
-
在设置菜单上,选择项目设置,然后选择 应用程序转换。
-
对于编译器类型,请选择用于 C++ 应用程序源代码的编译器。 AWS SCT 支持以下 C++ 编译器:微软 Visual C++ GCC 、GNU编译器集合和 Cl ang。默认选项是 Microsoft Visual C++。
-
对于用户定义的宏,请输入包含来自 C++ 项目的用户定义宏的文件路径。确保该文件具有以下结构:
#define name value
。在上述示例中,value
是可选参数。此可选参数的默认值为1
。要创建此文件,请在 Microsoft Visual Studio 中打开项目,然后选择项目、属性、C/C++ 和预处理器。对于预处理器定义,选择编辑,然后将名称和值复制到新的文本文件中。然后,为文件中的每个字符串添加以下前缀:
#define
。 -
对于外部包含目录,请输入包含您在 C++ 项目中使用的外部库的文件夹的路径。
-
选择确定以保存项目设置并关闭窗口。
或者,您可以为每个 C++ 应用程序转换项目指定转换设置。有关更多信息,请参阅 转换您的 C++ 应用程序SQL代码。
修改源应用程序代码后,将其上传到 AWS SCT 项目中。
上传更新的应用程序代码
展开左侧面板中应用程序下的 C++ 节点。
选择要更新的应用程序,然后打开上下文(右键单击)菜单。
选择刷新,然后选择是。
AWS SCT 从源文件上传您的应用程序代码并删除转换结果。要保留您在中进行的代码更改 AWS SCT 和转换结果,请创建一个新的 C++ 转换项目。
此外,还会 AWS SCT 移除您为所选应用程序指定的应用程序转换设置。上传更新的应用程序代码后, AWS SCT 应用项目设置中的默认值。
删除 C++ 应用程序转换项目
展开左侧面板中应用程序下的 C++ 节点。
选择要删除的应用程序,然后打开上下文(右键单击)菜单。
选择删除,然后选择确定。
在中创建 C++ 应用程序转换评估报告 AWS SCT
C++ 应用程序转换评估报告提供了有关将 C++ 应用程序中嵌入的SQL代码转换为与目标数据库兼容的格式的信息。评估报告提供了所有SQL执行点和所有源代码文件的转换详细信息。评估报告还包括针对 AWS SCT 无法转换的SQL代码的操作项目。
创建 C++ 应用程序转换评估报告
展开左侧面板中应用程序下的 C++ 节点。
选择要转换的应用程序,然后打开上下文(右键单击)菜单。
选择转换。
在视图菜单上,选择评估报告视图。
-
查看摘要选项卡。
摘要选项卡显示了 C++ 应用程序评估报告中的执行摘要信息。它显示所有SQL执行点和所有源代码文件的转换结果。
选择 “将语句保存JSON到”,将从 Java 应用程序中提取的SQL代码另存为JSON文件。
-
(可选)将报告的本地副本另存为PDF文件或逗号分隔值 (CSV) 文件:
-
选择右PDF上角的保存到,将报告另存为PDF文件。
该PDF文件包含执行摘要、行动项目和应用程序转换建议。
-
选择右CSV上角的保存到,将报告另存为CSV文件。
该CSV文件包含操作项目、建议的操作以及转换SQL代码所需的估计手动操作复杂度。
-