openGauss- 支持嵌入式SQL预处理器(ECPG)

可获得性

本特性自openGauss 3.1.0 版本开始引入。

特性简介

支持C语言中嵌入式SQL程序。

客户价值

可以相对容易地将为其他SQL数据库编写的嵌入式SQL程序移植到openGauss,保证用户业务快速迁移。

特性描述

嵌入式SQL程序由一种普通编程语言编写的代码(在这里是C)和位于特殊标记的小节中的SQL命令混合组成。要构建该程序,源代码(.pgc)首先会通过嵌入式SQL预处理器,它会将源代码转换成一个普通C程序(.c),并且后来它能够被一个C编译器所处理。转换过的 ECPG 应用会通过嵌入式 SQL 库(ecpglib)调用libpq库中的函数,并且与openGauss服务器使用普通的前端/后端协议通信。
嵌入式SQL在为 C 代码处理SQL命令方面比起其他方法来具有优势。

  1. 它处理了C程序中变量之间冗长的信息传递;
  2. 其次,程序中的SQL代码在编译时就会被检查以保证语法正确性;
  3. 在C语言中嵌入的SQL是在SQL标准中指定的并且受到很多其他SQL数据库系统的支持。

特性增强

无。

特性约束

ECPG支持大部分的openGauss SQL语法,但由于目前ECPG的语法和词法不支持对匿名块和Package语句的处理,因此匿名块和创建Package语句无法作为嵌入式SQL使用。

依赖关系

无。

详情查看:https://opengauss.org

详情查看:https://docs-opengauss.osinfra.cn

Logo

鲲鹏昇腾开发者社区是面向全社会开放的“联接全球计算开发者,聚合华为+生态”的社区,内容涵盖鲲鹏、昇腾资源,帮助开发者快速获取所需的知识、经验、软件、工具、算力,支撑开发者易学、好用、成功,成为核心开发者。

更多推荐