一 OTL介绍
OTL 是 Oracle, Odbc and DB2-CLI Template Library 的缩写,是一个C++编译中操控关系数据库的模板库,它目前几乎支持所有的当前各种主流数据库,例如Oracle, MS SQL Server, Sybase, Informix, MySQL, DB2, Interbase / Firebird, PostgreSQL, SQLite, SAP/DB, TimesTen, MS ACCESS等等。OTL中直接操作Oracle主要是通过Oracle提供的OCI接口进行,进行操作DB2数据库则是通过CLI接口来进行,至于MS的数据库和其它一些数据库,则OTL只提供了ODBC来操作的方式。当然Oracle和DB2也可以由OTL间接使用ODBC的方式来进行操纵。
在MS Windows and Unix 平台下,OTL目前支持的数据库版本主要有:Oracle 7 (直接使用 OCI7), Oracle 8 (直接使用 OCI8), Oracle 8i (直接使用OCI8i), Oracle 9i (直接使用OCI9i), Oracle 10g (直接使用OCI10g), DB2 (直接使用DB2 CLI), ODBC 3.x ,ODBC 2.5。OTL最新版本为4.0.193,参见http://otl.sourceforge.net/ 其中有对otl的介绍、源码下载、例子及文档、FAQ、作者的简历和一些有用的链接。
优点:
a. 跨操作系统跨数据库
b. 运行效率高,与C语言直接调用API相当
c. 开发效率高,起码比ADO.net使用起来更简单,更简洁,整个库就只有一个头文件
d. 部署容易,不需要ADO组件,不需要framework.net 等
缺点:
a. 说明文档以及范例不足够丰富(暂时性的)
注意OTL的跨操作系统及跨数据库特性是由其调用具体数据库的接口而决定的,比如oracle可以通过OCI接口、db2可通过CLI接口。另外的一些数据库则是通过ODBC访问的,比如我需要在操作系统A上通过OTL访问数据库B,要么这个数据库满足otl特定的调用接口(比如oracle或db2),要么在此操作系统上存在odbc使得otl可以通过odbc来调用此数据库。
二 OTL连接Oracle数据库——本地安装有Oracle客户端
oracle数据库可以是在本地也可以是在服务器上。