达梦数据库编程指南
上QQ阅读APP看本书,新人免费读10天
设备和账号都新为新人

1.2.1 主要编程接口

达梦数据库具有丰富的应用开发编程接口,为应用系统访问和操作数据库数据提供了高效便捷的手段,可满足不同数据库应用系统开发的需要。达梦数据库支持的编程语言及接口特性如表1-1所示。

表1-1 达梦数据库支持的编程语言及接口特性

(续表)

如图1-1所示是达梦数据库主要编程接口及关系,现将其中一些编程接口说明如下。

img

图1-1 达梦数据库主要编程接口及关系

(1)DM DPI。

DM DPI是达梦数据库原生编程接口,其实现参考Microsoft ODBC 3.0标准,基于C语言编写,提供了访问达梦数据库的最直接的途径。其他除DM JDBC和DM .NET Data Provider外,DM DCI、DM ODBC、DM PHP、DM Python、DM Node.js等接口都是基于DM DPI扩展实现的。

(2)DM DCI。

DM DCI(DM Call Interface)基于DM DPI接口,采用C语言编写实现,提供了一组对达梦数据库进行数据访问和存取的接口函数,支持C和C++的数据类型、接口调用、语法和语义。

(3)DM JDBC。

DM JDBC(Java Database Connectivity)是用Java编程语言编写的类和接口,为Java语言访问和操作达梦数据库提供支撑。DM JDBC是Java语言访问数据库的主要方式,以便于用连接池的功能来提高应用系统访问数据库的性能。

(4)DM ODBC。

DM ODBC 3.0遵循Microsoft ODBC 3.0标准开发,实现应用程序与达梦数据库的互联。程序员可以直接调用DM ODBC 3.0接口函数访问达梦数据库,也可以使用可视化编程工具,如C++Builder、PowerBuilder 等,通过DM ODBC 3.0 访问达梦数据库。DM ODBC基于DM DPI接口,采用C语言开发实现。

在应用DM ODBC开发程序时,需要安装达梦数据库客户端ODBC驱动程序,应用环境还需要安装相应的操作系统(Windows/Linux)的ODBC安装包,并配置DM ODBC数据源。

(5)DM .NET Data Provider。

DM .NET Data Provider是在.NET Framework 编程环境下,采用C#语言开发的应用程序访问达梦数据库的编程接口。DM .NET Data Provider在数据源和代码之间创建了一个轻量级的中间层,以便在不影响功能的前提下提高性能。

(6)DM PHP。

DM PHP是一个基于DM DPI开发的动态扩展库,实现基于PHP开发的Web应用访问和操作达梦数据库。DM PHP参考MySQL的PHP扩展实现。

(7)DM Python。

DM Python是依据Python DB API version 2.0标准开发的Python访问达梦数据库接口。DM Python基于DM DPI接口开发实现。在应用DM Python时,除需要Python标准库外,还需要DM DPI的动态库。

(8)DM Node.js。

DM Node.js是基于DM OCI开发实现的Node.js应用程序访问达梦数据库接口,与Oracle公司开发的Node oracledb功能兼容。

(9)DM Go。

DM Go是遵循Go语言数据库访问和数据操作标准,基于GO 1.13版本开发的database/sql包接口,实现Go语言应用程序访问达梦数据库的功能。

(10)数据装载DM FLDR。

数据装载DM FLDR(Fast Loader)是实现将文本数据快速载入达梦数据库的接口。开发人员可以使用DM FLDR接口,将按照一定格式排序的文本数据以快速、高效的方式载入达梦数据库中,或者把达梦数据库中的数据按照一定格式写入文本文件。DM FLDR接口提供C语言和Java语言两种接口,并提供dmfldr数据装载命令行工具。

(11)日志分析DM Logmnr。

DM Logmnr包是达梦数据库的日志分析工具,用于分析归档日志文件,包括JNI接口、C接口,以及DBMS_LOGMNR系统包。在使用DBMS_LOGMNR系统包时可以通过动态视图v$logmnr_contents展示日志中的信息。

达梦数据库各类编程接口动态库及驱动程序清单如表1-2所示。

表1-2 达梦数据库各类编程接口动态库及驱动程序清单

(续表)