InterBase概述

日期: 2008-06-15 来源:TechTarget中国

  InterBase是一种关系数据管理系统(Relational database management system RDBMS),它提供了在单机或多用户环境中的快速数据处理及共享的工具。InterBase的核心是提供透明的多机种支持的网络运行服务器技术。InterBase是可以在Windows 95、Windows NT、Novell NetWare及多种UNIX操作系统上运行的工具。


  InterBase的Windows 95和Windows NT版有两种形式,一是基于单机应用的 Local InterBase,另一种为基于远程、多机工作方式的InterBase Server。两种服务器都带有Windows 的客户工具,包括用户授权和数据库管理器Server Manager、用作数据库定义及操作的Windows ISQL以及一系列其它高效的工具。


  一、Local InterBase


  作为一种单用户32位ANSI SQL的本地服务器,InterBase是与Borland的客户开发工具(如Delphi、Visual dBase)的Client/Server版共同发售的。单用户版是基于PC开发的,并被用来开发在本地数据库环境中独立应用的SQL应用程序及远端服务器连接的客户/服务器(Client/Server)应用程序。


  二、InterBase Server


  作为一种多用户的、32 位ANSI SQL支持的远端服务器,InterBase Server是单独发售或同Borland的有限客户使用的Client/Server版开发工具(如 Delphi)一起发售的。


  开发者可以使用基于数据库引擎(Borland DataBase Engine–BDE)、核心数据库及连通性软件(connectivity middleware)的Borland用户开发工具建立Client/Server应用程序。通过InterBase SQL Links连接到InterBase数据库服务器。


  当使用了Borland的客户端开发工具(如Delphi Client/Server suit)时,BDE被作为InterBase Server 的 API接口使用。直接对 InterBase API进行操作的应用程序必须用InterBase Server Developer版来创建。


  使用InterBase Server,客户的应用程序也可以在其宿主语言中嵌入SQL、动态SQL语句。此外,这些应用程序还可以用 InterBase API的底层函数来编写。InterBase通过InterBase API提供了访问入口。


  InterBase Server还包含了一个驱动程序,它专为开放式数据库接口 (ODBC)而设计,使得ODBC客户端应用程序同InterBase Server共享数据。


  三、InterBase的特性简介


  InterBase提供了RDBMS的全部优点,下面是InterBase的一些关键特性:


                    表附录C.1  InterBase的关键特性


  特性(Feature)                        简介(Description)


  支持网络协议                支持Microsoft NetBEUI/命名管道和TCP/IP协议, 便
                              于通讯。(只用于InterBase Server)      与SQL-92入口的一致性     通过交互式SQL工具和Borland桌面应用程序使ANSI
                              的标准SQL可被利用                            
   同时访问多个数据库         一个应用程序可以在同一时间访问多个数据库      
   多代结构                  服务器可保持(必须的)纪录的老版本。这样多个事务可
                              以查到一致的数据库视图                        
   查询优化                  服务器对用户进行自动优化处理, 或用户可以人为指定
                              查询方案。                                    
   BLOB数据类型              Binary Large Objects(二进制大对象) 可以包含非格式化
                              数据如图像和文本                              
   定义参考完整性             自动交叉表格关系(在Fore|GN和Primary Key之间)进行
                              强制转换                                      
   存储过程                   数据库中可编程元素。用其进行高级的查询及数据操作
   触发器                     自包含的程序模块。当指定表格中的数据被插入、 更
                              新或删除时被激活                              
   事件警报器                 从数据库向应用程序传递消息,允许应用程序接收数据
                              库改变的异步通知消息                          
   可更新的视图               当数据改变时,可立即在视图上反映出来          
   用户定义函数(ODFS)         在服务器上运行的程序模块                      
   外部连接                   在两个表之间构造关联,并进行更复杂的操作      
   显式事务管理               对事务开始通讯及回转,也含已命令事务的全方位控制
   多程序同时访问数据        一个应用程序读取表格,不需要禁止其它程序访问此表
   多维数组                  按索引表排列的多列数据                         
   自动两阶段提交            多数据库协作事物中,在提交前先检查所有数据库的修
                             改情况(只用于InterBase Server)                     
   InterBase的API             底层函数库。使得应用程序构造SQL/DSQL语句, 直接
                             访问InterBase引擎并接收返回结果 (仅InterBase Server
                              Developer 版)                                  
   gpre                     将嵌入的SQL/DSQL 语句的变量转换成为可由语言编译
                             器读取格式的处理器。(仅InterBase Server Developer版)
   服务器管理器              一种Windows工具,对数据库进行备份、修复、保持及
   (Server Manager)            安全性的管理                                    
   Windows ISQL             Windows的一种直观交互式的数据定义及查询工具。   
   命令行(Command-line)ISQL  InterBase的直观交互式SQL工具的命令行版,可以用其
                            替代Windows ISQL                                
   Comdiag                   InterBase通讯诊断工具                            
   命令行DBA工具           InterBase数据库管理工具的命令行版本。可以用其替代
                             服务器管理器Server Manager                       
   头文件                    在应用程序开头包含的文件。定义了 InterBase 的数
    (Header Files)              据类型及函数调用 (仅InterBase Server Developer版)   
   制作文件(make file)          用来演示如何使用Borland MAKE工具来在Windows下
                              编译、链接InterBase应用程序的文件 (仅 InterBase
                             Server Developer 版)
   例程                       C程序,可进行编译、链接。程序可以用来在服务器上
                              查询InterBase数据库范例。(仅 InterBase  Server
                              Developer 版)
   消息文件                   INTERBAS.MSG文件,含呈送给用户的消息。
 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━


  四、InterBase的约束


  约束是由操作系统及硬件引入的限制项目。
    
            对象限制


            数据库大小 :没有严格限制
     每个数据库可含文件 :65536.元数据则只允许更少的文件数目(须为SHORT类型)
一个事务中打开的数据库数 :没有严格限制
   每个数据库中可含表格 :65536(用SHORT数字表示)
      每个表格的行、列数 :无限制,记录可以到64K。可创建列数视所用数据类型而
                           定。
                 行大小 :64K
    每个数据库索引个数 :无严格限制
     每个表格的索引数 :无严格限制
     每个触发器所容事件 :无限制
    每存贮过程所容事件 :无限制
        BLOB大小 :32GB(BLOB段大小64K)
         数组大小 :64K
         可联表格 :无限制
       查询嵌套层数 :无限制
    每一综合检索的列数 :16
  每一存贮过程的嵌套层数 :Windows 3.X系统为75、Windows 95及WindowsNT为
                           750、其它系统 1000
    每一触发器的嵌套层数 :同上存贮过程的规定
       存贮过程长度 :48K
         排序从句键 :64K
              触发器长度 :64K


  五、语法规则


  表附录C.2讲述了语句及简码中的语法约定,并提供了用法的简单例程。


                    表附录C.2  InterBase的语法约定
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
  约定           用途            实例
 ─────────────────────────────────────
  大写(UPPERCASE)  应用时必须被正确输入的关    SET TERM II;
                         键字
  斜体(italic)           不能被分为更小单元的参数    create TABLE,name
                         例如表格名称不能再细分     (<col>[,<col>…];@
    <斜体>(<italic>)       在尖括号中的参数可以被划    create TABLE name
                         分为更小的句法单元,例如    (<col>[,<col>…]
              列定义(<col>)可以被再分为     <col>=mane<datatype>
                         名称、数据类型和强制定义   [CONSTRAINT name<type>]
  方括号[ ]            方括中放可选项语句       <col>,[<col…]
    省略号…       省略号表示括号中的句子可    (<col>,[<col>…];
             以重复需要的若干次
  分隔符|        分隔符表示其分隔的两个句    SET TRANSACTION
                        子中的任何一个可被用,但    {SNA PSHOT
                        不会都用            [TABLE STABILITY]|
                                                        READ COMMITTED}
    花括号{ }          在花括号中的分隔符隔开多        SET TRANSACTION
                       种选项,必须使用其中之一,      {SNAP SHOT[TABEL
                     在实际应用此语句时,必须    STABILITY] | READ
                       有一个选项被包含        COMMITTED
   ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━


  六、数据库对象命名规则


  在InterBase文件集中,InterBase数据库对象如表格(tables)、视图(views)及列(columns)的名称,显示为大写字符。因为这是数据库系统表格存贮信息的方式。


  当程序员或用户创建一个数据库对象或用名称来指定对象时,大小写并不是很重要,只须遵守以下的数据库对象命名规则即可:


  ① 每一个名字的第一个元素一定要是字母,即以字母(A-Z或a-z)开头
  ② 对象名最长限度为31个字符,其中包括美元符号($)、下划线(_),数字0-9,字母A-Z和a-z。一些对象会约束名称,限制长度为27字节
  ③ 保证对象名的唯一性。在所有情况下,同类型(如表格、视窗)的对象,名称必须是唯一的。多数情况下,在数据库范围内的对象名称亦必须是唯一的


  七、文件命名规则


  InterBase对于很多平台都是可用的。多数情况下,在多机种网络环境中的用户可以访问他们的InterBase数据库文件,即使客户端和服务器端的平台是不相同的,只需知道目标平台上的文件命名规则即可。


  因为文件命名规则在不同的平台上区别很大,而且由于核心的InterBase文件集对这些平台都是相同的,因此所有的文件名在文本状态及例子中都是用DOS的 “8.3” 规则的,即最长8个字符的文件名和最长 3个字符的扩展名。例如,所有服务器上的示范数据库都是employee.gdb.


  您可能注意到在例子中都用了扩展名:“.gdb”,它是缺省的 InterBase 数据库扩展名。通常情况下,InterBase完全支持各种平台的文件命名规则,包括节点和路径名的用法。InterBase能识别用命令和语句表明的两种类型的文件名称说明。一种叫做主文件说明,另一种叫做次级文件说明。 一些命令和语句在用次级文件说明时对节点名称要进行规范限制。


  在语法上,文件说明表示如下:


  “<file spec>”


  八、文件说明


  1.主文件说明 


  在进行主文件说明时,InterBase语法总支持完整文件说明,包括可选的节点名和完全的路径。例如,create DATABASE用语法表示如下:


  create {DATABASE |SCHEMA]”<file spec>”
  [USER “username”[PASSWORD”password”]
  [PAGE-81ZE [=] int]
  [LENGTH [=] int [PAGE[S]]
  [DEFAULT charACTER SET charset]
   …


  在以上句子中,<filespec>紧跟在create DATABASE后面,它支持节点名和路径说明,包括一个指定平台的驱动器或指定列。


  2、次级文件说明


  对于支持多种文件说明的InterBase语法,例如CREATA DATABASE,所有在第一个文件说明后的均为次级文件说明。次级文件说明通常不包含节点名称, 但可能说明一个完整的路径,例如,create DATABASE的句法说明如下:


  create {DATABASE |SCHEMA} : “filespec”
  [USER “username” [PASSWORD “password”]]
  [PAGA SIZE [=] int [PAGE[S]]]
  [DEFAULT charACTER SET charset]
  [<secondary-file]
  <secondary-file> = FILE “filespec” [<fileinto>][<secondaryfile]
  <fileinfo>=LENGTH[=]int[PAGEE]|STARTING[AT[PAGE]]int[<fileinfo>]


  在次级文件说明中,<filespec>不支持节点名称的说明。

我们一直都在努力坚持原创.......请不要一声不吭,就悄悄拿走。

我原创,你原创,我们的内容世界才会更加精彩!

【所有原创内容版权均属TechTarget,欢迎大家转发分享。但未经授权,严禁任何媒体(平面媒体、网络媒体、自媒体等)以及微信公众号复制、转载、摘编或以其他方式进行使用。】

微信公众号

TechTarget微信公众号二维码

TechTarget

官方微博

TechTarget中国官方微博二维码

TechTarget中国

电子邮件地址不会被公开。 必填项已用*标注

敬请读者发表评论,本站保留删除与本文无关和不雅评论的权力。

相关推荐

  • 利用索引提高SQL Server数据处理的效率

    在良好的数据库设计基础上,能有效地使用索引是SQL Server取得高性能的基础,SQL Server采用基于代价的优化模型,它对每一个提交的有关表的查询,决定是否使用或……。

  • 什么是interBase

    简单地说,interbase是一个完全符合ANSI SQL92的关系型数据库管理系统。和Oracle,Sybase,Ms SQL Server一样,interbase实现了所有关系数据库具备的基本功能……

  • InterBase 数据库函数库

    InterBase 是 Inprise 的数据库系统,在 Windows 系统平台上的 Delphi 及 BCB 等开发工具中附有单机的版本供开发使用……

  • InterBase有趣的故事

    Interbase诞生在一次淋浴中。当从浴室的窗子望到远处的树林时,Jim Starkey的突然灵想最终导致了Interbase的产生……