精华区 [关闭][返回]

当前位置:网易精华区>>讨论区精华>>编程开发>>● 数据库技术>>INFORMIX 产品>>Inforix SDK技术白皮书

主题:Inforix SDK技术白皮书
发信人: garyjan()
整理人: chedong(2000-04-02 12:49:37), 站内信件
附2.2 Informix Software Developer Kit (SDK)
INFORMIX  SDK 是 INFORMIX 提供的应用界面  ( API ) 的一个集合。  INFORM
IX  SDK允许用户利用本地化的各种界面,访问 INFORMIX服务器。 它集合了支持
 JDBC 及 RMI 的JAVA界面,C++ 界面及符合 ODBC3.0 驱动器的 INFORMIX-CLI 
和 INFORMIX-ESQL/C 应用开发界面。 
INFORMIX SDK 使客户缩短了他们的开发时间,提高了代码的可重用度 , 减少了
开发队伍的培训时间。 利用 INFORMIX SDK,用户可快捷容易地加 入自己的高级
功能而不影响现有的系统的运行。 
INFORMIX-CLI
INFORMIX CLI (call level interface) ,又称INFORMIX调用级接口,使得 应用
开发者可以动态地访问INFORMIX数据库服务器。基于Microsoft的开放的 数据库
互联结构(ODBC),INFORMIX-CLI提供给您一种基于工业标准的方式, 访问存放于
INFORMIX中的数据。
基于Microsoft开放式连接规则,INFORMIX-CLI的组成结合了标准的 SQL、强大而
灵活的自然的C调用界面以及开放的被广泛接受的ODBC API 规则。利用INFORMIX
 CLI,遵从ODBC标准的应用,可以通过开放的工业 标准访问INFORMIX的数据源。

         INFORMIX CLI包含一组支持SQL的C语言函数调用库。采用INFORMIX CL
I 写的应用,不用将SQL语句嵌入到INFORMIX CLI程序中,而是将SQL语 句作为一
组字串, 以函数变量的方式传入到 INFORMIX CLI 程序中。   利用 INFORMIX 
CLI,应用可以:
  申请一个与INFORMIX数据库的连接或对话;
  向数据库发送SQL请求;
  对请求返回结果,定义其数据格式及存储空间;
  取出SQL返回结果;
  报告错误信息;
  实施对事物的控制;
  结束与数据库的连接。
INFORMIX CLI 由两部分组成:给应用提供信息的驱动管理器及执行 函数调用与
管理应用与INFORMIX数据库之间的信息交换的驱动器。
INFORMIX CLI 驱动器支持所有核心级及level 1 API函数,并支持与 ODBC标准一
致的level 2 级函数(见表1所示)。INFORMIX CLI支持最小级及 核心级的SQL语法
,包括一些扩展的SQL语句、表达式及数据类型。
INFORMIX CLI 有UNIX及Windows版本。所有版本均包含驱动器所需的 初始化文件
结构,函数,SQL语法及错误信息格式等。
INFORMIX CLI产品的特点
全球语言支持(GLS)
全球语言支持功能存在于INFORMIX 7.2及7.2以上版本,它可以操纵不 同的文化
背景、不同的语言及不同的字符集,而毋需区别其运行的地域及国家 。
遵从工业标准
INFORMIX CLI 是基于 ODBC 基础上的,因此它符合 X/Open 及  SQL Access Gr
oup 组织的调用接口规则。ODBC及 X/Open 及  SQL Access Group 组织的调用接
口规则提供了一种遵从ANSI SQL标准的、公用的、开放的接口。 利用此接口,可
以访问任何的INFORMIX服务器。
支持INFORMIX客户端的开发
INFORMIX CLI 允许作为 INFORMIX 客户端的开发工具。当利用建立在  INFORMI
X动态可伸缩性体系结构上的INFORMIX CLI作为工具时, INFORMIX 可以提供给开
发者INFORMIX自身所独有的特性 --- 一些高级的数据库访问的 API。例如:
  INFORMIX 数据类型,包括byte 及 text;
  INFORMIX 自身的SQL语句,包括高级数据定义语句;
  INFORMIX的隔离级别,包括提交读和游标固定;
  INFORMIX存储过程的SQL操作,包括查询、更新、插入及删除;
  INFORMIX自身的错误信息,包括SQLCA数据结构。
支持INFORMIX的开发工具及应用
INFORMIX   CLI 可以被利用在成千上万的利用 INFORMIX 工具的 INFORMIX 应用
中。已经存在的遵循ODBC标准的应用,通过 INFORMIX  CLI提供的ODBC技术,可
以连接到INFORMIX数据库服务器上。
含有INFORMIX-Connect 是 INFORMIX 客户端开发工具软件包 (SDK) 的组成部分
。INFORMIX-Connect允许任何的INFORMIX应用访问INFORMIX 数据库引擎。
INFORMIX-ESQL/C
使用嵌入式ESQL/C开发工具,编程人员可获得高效率,灵活性,移植性和标准化
。开发人员就可以用熟悉的第三代开发语言来开发应用程序,同时利用SQL 访问
数据。
INFORMIX - ESQL使开发人员可以获得访问高效的SQL数据库能力,包括 高级数据
定义和数据操作命令,以及SQL查询优化工具。另外,Informix -ESQL 符合 ANS
I  SQL 标准,因此,开发人员不必学习不同的数据访问方法,即可访 问 Infor
mix数据库服务器及其它数据库服务器。
较少的代码
将 SQL 语义嵌入到第三代程序设计语言中可大大减少用于数据访问的代码 量。
 当使用这种简短、类似英语的SQL语句时, 数据操纵的程序就变得快捷和 简单
 。开发人员可以创建和修改数据库和表、获取和修改数据、增加索引,所 有这
些仅仅需要几行简短的SQL语句。
 功能强大的命令
使用 SQL,高效就意味着功能强大。例如:仅用一个短小的数据定义语句 CREAT
E DATABASE或CREATE TABLE,  就替代了过去用C语言建造数据库及 其相关对象的
所有的代码行。一个的命令如: SELECT、 INSERT、DELETE、 UPDATE 则可以进
行添加、删除、修改数据。
当开发人员需要将某一行代码作为ESQL 语句来处理时,只需要简单地将 EXEC S
QL  放在希望处理的第一行代码行之前就可以了,  INFORMIX-ESQL 的预编译器
将在程序中寻找SQL语句,并把它们封装在Informix的函数调用中。 Informix-E
SQL 将引发3GL 编译器,编译并链接 Informix 函数库,最后生成可 执行的应用
 。另外,Informix 预编译器允许编译纯3GL代码及目标文件。
类似英语的语句
表1给出了一个 INFORMIX-ESQL/C 应用程序代码例子,在这个例子中,所 有在 1
994年以前开始为公司工作的办事处经理都将获得提薪。
UPDATE、SELECT或DELETE语句的WHERE从句确定哪一行将被处理,WHERE 从句中包
含单个域、多个域的条件,联想条件,子查询等。 该例子表 示了一个与单个字
域条件相结合的子查询的条件。
兼容性
Informix  ESQL与 ANSI SQL92入门级标准兼容。  这意味着开发人员建立的 应
用可以移植到其它环境下,或应用于不同的数据库服务器,  而无需修改代码 。
使用TCP/IP和IPX/SPX网络协议, 开发人员建立的应用可以用于Informix数据 库
和其它不同的数据库服务器中。当然,开发人员还可以利用Informix SQL。最 近
, Informix还增加了新的命令,以增加功能和灵活性。另外,Informix-ESQL 支
持X/OPEN的命令,如GET  DIAGNOSTICS 和 ALLOCATE DESCRIPTOR , 以提供改善
应用代码的可移植性。
连接管理
同时使用高级的 ANSI 标准的CONNECT,SET CONNECTION和DISCON -NECT  语句,
   应用开发人员可建立与多数据库服务器连接的应用。 使用这些 语句,用不同
的或动态的用户码和密码,应用可在多数据库环境下使用。例如 采用INFORMIX 
-ESQL, 事务可以在一个数据库服务器中挂起, 同时切换到另 一个数据库服务
器上单独执行。
客户机/服务器体系结构
一旦应用开发完毕, INFORMIX-ESQL 自动将 Informix 通讯函数库链接到 应用
中。这样,无需购买附加的产品,应用即含有网络功能,并可运行在客户 机/服
务器的环境中。
在最新的版本中,增加了新的语法,允许编程人员调整客户机/服务器通讯缓冲区
的大小,以获得更高性能。
内置INFORMIX -TP/XA功能
INFORMIX-TP/XA功能与INFORMIX -ESQL一起捆绑销售。
INFORMIX-TP/XA通过使用事务管理器,提供异种数据库环境下的两阶段 提交的能
力。INFORMIX TP/XA 是C语言的函数库, 用来建立数据库服务器和 事务管理器
的连接。当该函数库链接到用户的C语言应用程序中,这些程序将 通过X/Open 
XA接口与Informix数据库交换事务信息。
INFORMIX  TP/XA和INFORMIX-ESQL 的集成提供如下好处:
 分布的,异种环境的事务管理
任何支持XA标准的数据库管理程序可参与全局事务,在事务中,事务管理器作为
两阶段提交协议中的协调者。 
一个全局事务可能延伸到多系统上多个数据库服务器上, 甚至这些数据库 服务
器来自不同的厂商,并支持XA标准。
 大量用户数的可伸缩性
事务管理器使你增加更多的OLTP系统的用户数,而数据库所在的系统不会过载。
这是因为, 在客户机和服务器的应用程序间, 事务管理器就象一付缓和 剂。 
即使很少量的应用和数据库服务器也能够高效支持大量用户数。
 可调节性能
事务管理器通常提供负载平衡和优先处理的工具。 对于某种数据库的请求 ,事
务管理器可自动平衡工作量。这就保证了一致的响应时间。
 高可用性
事务管理器包含许多增强可用性的内部功能。例如,当服务器进程异常中 断,请
求可能会转到另一个复制的服务进程中去。在某些情况下,事务管理器 可检测到
服务进程的失败,并通知客户机。由于信息队列独立于进程,所有排 队的请求将
转到复制的服务进程上。在不丢失事务的情况下,可完成恢复处理 。
 兼容性
INFORMIX - TP/XA可与Novell公司的TUXEDO事务管理器,Transarc 公司 的 Enc
ina 事务管理器以及IBM 公司的CICS/6000事务管理器联合使用。
INFORMIX-Object Interface for C++
INFORMIX-Object Interface for C++允许用户通过单一的面向对象的应用界 面
 (API) 利用C++访问INFORMIX数据库。 INFORMIX-Object Interface for C++ 针
对的是想利用面向对象的界面开发基于 SQL 应用 C++ 的开发者。它带给利 用 
C++ 及 Microsoft Component Object Model (COM) 的开发者在 INFORMIX 服务
器上的可伸缩性及扩展性。 INFORMIX - Object Interface for C++ 将 INFORM
IX 数据库服务器的特性, 通过不同层次的类得以表现。 Operation classes  
提供 NFORMIX 数据库的访问,定义查询及返回结果的方法等。 Value interfac
e是一组抽象的类,用以支持特殊应用的交互式行为,例如支持INFORMIX Dynami
c Server with Universal  Data Option 值对象。 INFORMIX-Object Interfac
e for C++还支持 DataBlade的开发。开发者可将利用 C++ 的类产生的值 对象,
作为新的数据类型 定义于INFORMIX Dynamic Server with Universal  Data Op
tion中,利用 C-linkage 功能库或value interfaces聚蔟,对新的数据类型定义
 应用的动态连接及统计等操 作。 
INFORMIX-Object Interface for Java
INFORMIX-Object Interface for Java允许用户通过单一的面向对象的应用界 面
 (API) 利用Java访问INFORMIX数据库。 INFORMIX-Object Interface for Java
 针对的是想利用面向对象的界面开发基于 SQL 应用Java的开发者。它带给利用
 Java的开发者在 INFORMIX 服务器上的可伸缩性及扩展性。 INFORMIX-Object 
Interface for Java支持数据类型及用户自定义的扩展。 INFORMIX - Object I
nterface for Java包含INFORMIX-Driver For JDBC。 INFORMIX-Driver For JD
BC提供一个标准的API,使得用户可以用纯Java API编写数据库的应用。


--
※ 来源:.月光软件站 http://www.moon-soft.com.[FROM: 202.99.12.234]

[关闭][返回]