关于 DBMS_CLOUD_REPO

通过 DBMS_CLOUD_REPO 程序包,可以轻松访问云代码 (Cloud Code,Git) 系统信息库中的文件,包括:GitHub、AWS CodeCommit 和 Azure 系统信息库。

此程序包是访问多云代码资料档案库的单个接口,允许您将 SQL 文件上载到 Git 资料档案库或直接从云代码资料档案库安装 SQL 脚本。此程序包还允许您使用云代码资料档案库管理 SQL 脚本的代码版本,以及从 Git 资料档案库安装或修补应用程序代码。

概念

  • Git 版本控制系统: Git 是用于跟踪任何文件集更改的软件,通常用于协调程序员在软件开发期间协作开发源代码的工作。其目标包括速度、数据完整性以及对分布式非线性工作流的支持。

  • Git 资源库:Git 资源库是项目的虚拟存储。它允许您保存代码的版本,您可以在需要时访问这些版本。

体系结构

DBMS_CLOUD_REPO 软件包提供了四个功能区:
  • 使用通用云代码资料档案库句柄初始化资料档案库

    • 初始化 GitHub 代码资料档案库

    • 初始化 AWS CodeCommit 代码资料档案库

    • 初始化 Azure 资源库代码资料档案库

  • 资料档案库管理操作

    • 创建资料档案库

    • 更新资料档案库

    • 列出资料档案库

    • 删除资料档案库

  • 资料档案库文件管理操作

    • 将文件从 Oracle Database 上载到代码资料档案库。

    • 将文件从代码资料档案库下载到 Oracle Database。

    • 从代码资料档案库中删除文件。

    • 列出代码资料档案库中的文件。

  • SQL 安装操作

    • 将数据库对象元数据 DDL 导出到资料档案库。
    • 从 Oracle Database 中的代码资料档案库中的文件安装 SQL 语句。

    • 从缓冲区安装 SQL 语句。

DBMS_CLOUD_REPO 数据结构

DBMS_CLOUD_REPO 程序包定义记录类型和通用 JSON 对象类型 repo

REPO JSON 对象

DBMS_CLOUD_REPO REPO 是表示特定云提供商的云代码资料档案库的不透明 JSON 对象。REPO 对象可以传递到不同的 DBMS_CLOUD_REPO API。此不透明对象可确保 DBMS_CLOUD_REPO 过程和函数与多云兼容;当您将一个云代码资料档案库提供程序迁移到另一个云代码资料档案库时,无需更改任何代码。

DBMS_CLOUD_REPO 初始化操作

列出 DBMS_CLOUD_REPO 软件包中用于初始化操作的子程序。

子程序 说明

INIT_AWS_REPO 函数

此函数初始化 AWS 资料档案库句柄并返回不透明类型。

INIT_AZURE_REPO 函数

此函数初始化 Azure 资料档案库句柄并返回不透明类型。

INIT_GITHUB_REPO 函数

此函数初始化 GitHub 系统信息库句柄并返回不透明类型。

INIT_REPO 函数

此函数初始化云代码资料档案库句柄并返回不透明 JSON 对象。

DBMS_CLOUD_REPO 资料档案库管理操作

显示 DBMS_CLOUD_REPO 软件包中系统信息库管理操作的子程序。

子程序 说明

CREATE_REPOSITORY 过程

此过程创建由 repo 句柄参数标识的云代码资料档案库。

DELETE_REPOSITORY 过程

此过程将删除由 repo 句柄参数标识的云代码资料档案库。

LIST_REPOSITORIES 函数

此函数列出由 repo 句柄参数标识的所有云代码资料档案库。

UPDATE_REPOSITORY 过程

此过程将更新由 repo 句柄参数标识的云代码资料档案库。该过程支持更新名称、说明或专用可见性状态,如云代码资料档案库所支持。

DBMS_CLOUD_REPO 资料档案库分支管理操作

列出 DBMS_CLOUD_REPO 软件包中系统信息库分支管理操作的子程序。

子程序 说明

CREATE_BRANCH 过程

此过程在由 repo 句柄参数标识的云代码资料档案库中创建分支。

DELETE_BRANCH 过程

此过程删除由 repo 句柄参数标识的云代码资料档案库中的分支。

LIST_BRANCHES 函数

此函数列出由 repo 句柄参数标识的所有云代码资料档案库分支。

LIST_COMMITS 函数

此函数列出由 repo 句柄参数标识的云代码资料档案库分支中的所有提交。

MERGE_BRANCH 过程

此过程将云代码资料档案库分支合并到由 repo 句柄参数标识的云代码资料档案库中的另一个指定分支中。

DBMS_CLOUD_REPO 文件操作数

列出 DBMS_CLOUD_REPO 软件包中文件操作的子程序。

子程序 说明

DELETE_FILE 过程

此过程从由 repo 句柄参数标识的云代码资料档案库中删除文件。

GET_FILE 过程和函数

该函数从云代码资料档案库下载文件的内容。该过程允许您从云代码资料档案库下载文件的内容,并将文件保存在目录中。

LIST_FILES 函数

此函数从云代码资料档案库下载文件。(可选)可以从特定分支、标记或提交名称访问文件内容。默认情况下,从默认系统信息库分支访问该文件。

PUT_FILE 过程

此过程将文件上载到由 repo 句柄参数标识的云代码资料档案库。该过程超载以支持从目录对象上载文件或将内容从 CLOB 上载到资料档案库文件。

DBMS_CLOUD_REPO SQL 安装操作

列出 DBMS_CLOUD_REPO 程序包中 SQL 安装操作的子程序。

子程序 说明

EXPORT_OBJECT 过程

此过程将数据库对象的 DDL 元数据上载到由 repo 句柄参数标识的云代码资料档案库。

EXPORT_SCHEMA 过程

此过程将方案中所有对象的元数据导出到由 repo 句柄参数标识的云代码资料档案库分支。

INSTALL_FILE 过程

此过程将 SQL 语句从由 repo 句柄参数标识的云代码资料档案库中的文件安装。

INSTALL_SQL 过程

此过程从给定为输入的缓冲区安装 SQL 语句。