Chinaunix首页 | 论坛 | 博客
  • 博客访问: 104595016
  • 博文数量: 19283
  • 博客积分: 9968
  • 博客等级: 上将
  • 技术积分: 196062
  • 用 户 组: 普通用户
  • 注册时间: 2007-02-07 14:28
文章分类

全部博文(19283)

文章存档

2011年(1)

2009年(125)

2008年(19094)

2007年(63)

分类: DB2/Informix

2008-03-28 16:23:36

作者:garyjan  出处:Unix爱好者家园unix-cd.com   
INFORMIX CLI 
INFORMIX CLI (call level interface) ,又称INFORMIX调用级接口,使得 应用
开发者可以动态地访问INFORMIX数据库服务器。基于Microsoft的开放的 数据库
互联结构(ODBC),INFORMIX-CLI提供给您一种基于工业标准的方式, 访问存放于
INFORMIX中的数据。 
对开放的调用界面的需求 
随着跨数据库平台的应用的急剧增长,特别是决策支持系统的需求日益 加大,信
息市场对开放式调用界面的需求骤然增加。由于基于开放式调用接口 的应用可以
忽略不同的目标数据源而灵活地存在,因而可以免去对各独立的数 据源需重新编
译应用的麻烦。 
作为应用程序访问数据库的接口,INFORMIX CLI包含了一组支持SQL 语句的调用
函数库。它使得基于客户机/服务器的数据库应用特别是动态的、交互式的数据库
访问成为可能。 
对于静态的SQL语句,当程序编译后,所有的程序构成都将固定保持不 变。而对
于动态的SQL语句,程序编译后并不能知道所有的程序内容,只有在 程序运行并
接收了所有的语句构成部分之后,程序的所有构成才能知晓。为此 ,CLI并不需
要预编译器,它可以让开发者将动态的SQL语句直接写入C程序之中。对于提交一
个SQL请求,开发者仅需简单地将SQL命令放入一个缓冲区中 并将缓冲区的内容作
为参数以函数调用的形式传入运行的程序中。 
INFORMIX-CLI 
基于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语法及错误信息格式等。 
ODBC --- De Facto工业标准 
Microsoft 开发了一种建立在X/Open SQL Access Group 调用级接口规则 之上的
调用级接口规则叫开放的数据库互联(ODBC)。ODBC是一组透明地访问关系型数据
库的通用的API。ODBC提供编程者一种选择:编写独立于数据库的 应用或利用基
于某数据库引擎性能优化器的SQL应用。 
ODBC体系结构包括四个部分: 
 遵从ODBC的应用:遵从ODBC的应用将执行ODBC的函数调用、提交SQL 语
句并取回结果。 
 ODBC 驱动管理器: ODBC 驱动管理器在Windows环境下由Microsoft的
动态 连接库充当或在UNIX下由共享库充当。驱动管理器将应用的请求发放到驱 
动器并提供应用的接口界面。 
 ODBC驱动:ODBC驱动处理ODBC的函数调用,将请求转变为数据源的语 
法格式,对特定的数据源提交SQL请求并将结果返回到应用。 
 数据源:数据源式驻留数据的数据库管理系统。 
ODBC 驱动及驱动管理器对于应用来说就象一个统一的整体,  处理着 ODBC的调
用。 
ODBC一致性的级别 
为帮助应用得建立及引导开发者建立整套的标准功能,ODBC对驱动定 义了两种不
同的一致性标准:API一致性标准及SQL一致性标准。每一个标准 拥有遵从三个级
别,相应级别支持的函数功能或SQL语法。表1列举了API一致 性级别提供的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-CLI产品规格 
系统需求: 
在UNIX 平台上,需要以下三种INFORMIX环境之一: 
    INFORMIX-OnLine  5.x For Unix 
    INFORMIX-OnLine Dynamic Server  6.x 以上 
    INFORMIX-SE 5.x以上 
在Windows 平台, 需要以下环境: 
(1). 客户端需求:INFORMIX-Connect For CLI (对于Windows 95或Windows NT环
境) 或 INFORMIX-NET  for Windows (对于Windows环境) 。 
(2). 在服务器端需求: 需安装以下三种 INFORMIX 数据库环境之一: 
 INFORMIX-OnLine  5.x For Unix 
 INFORMIX-OnLine Dynamic Server  6.x 以上 
 INFORMIX-SE 5.x以上 
磁盘需求: 5MB 
表1: API 一致性级别 
ODBC 核心函数 ODBC Level 1函数 ODBC Level 2函数 
SQLAllocConnect SQLBindParameter SQLBrowseConnect 
SQLAllocEnv SQLColumns SQLColumnPriviliges 
SQLAllocStmt SQLDriverConnect SQLDataSources 
SQLBindCol SQLGetData SQLDrivers 
SQLCancel SQLGetConnectOption SQLExtendedFetch 
SQLColAttributes SQLGetFunctions SQLMoreResults 
SQLConnect SQLGetInfo SQLNativeSQL 
SQLDescribeCol SQLGetStmtOption SQLNumParams 
SQLDisconnect SQLGetTypeInfo SQLParamOptions 
SQLError SQLParamData SQLPrimaryKeys 
SQLExexDirect SQLPutData SQLProcedures 
SQLExecute SQLSetConnectOption SQLSetScrollOptions 
SQLFetch SQLSetStmtOption SQLTablePrivileges 
SQLFreeConnect SQLSpecialColumns 
SQLFreeEnv SQLStatistics 
SQLFreeStmt SQLTables 
SQLGetcursonName 
SQLNumResultCols 
SQLPrepare 
SQLRowCount 
SQLSetCursorName 
SQLTransact 
阅读(1065) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~