很多人认为,数据库编程是一个颇具诱惑力的工作,这诱惑力来自于数据库应用的巨大市场需求。 计算机应用有科学计算、数据处理与过程控制三大主要领域,而数据处理是其中所占比重最大的一个领域,包括现在最流行的客户机/服务器模式(c/s)、inte.net模式(b/s)应用从广义上讲都可以归入此应用领域。正是因为市场需求巨大,数据库编程前景被人看好,有意步入编程殿堂的你,对此是否有些心动呢?
一、数据库应用及编程原理
1.数据库应用的发展
数据库系统是在文件系统的基础之上发展而来的,经历了层次数据库——网状数据库——关系数据库三个阶段。由于关系型数据库采用人们比较容易理解和接受的二维表格来组织数据,发展迅速,已成为数据库产品的主流。我们这里介绍的数据库知识都是指的关系数据库。
2.基本概念
数据库(database,简称db) 是按一定组织方式存储在计算机存储器中、相互关联的数据集合,数据库的建立独立于程序。所谓关系数据库 就是将数据表示为表的集合,通过建立简单表之间的关系来定义结构的一种数据库。
数据库管理系统(dbms)是一个管理数据库的软件系统,为用户提供了描述数据库、操纵数据库和维护数据库的方法和命令,并且能自动控制数据库的安全以及数据完整。现在的oracle、sybase、microsoft sql server等数据库都是数据库管理系统。 数据库系统(dbs)是一个具有管理数据库功能的计算机系统,它包括应用软件、数据库(db)、数据库管理系统(dbms)和数据库管理人员(dba)几部分。我们今天讲的数据库编程一般就是指开发数据库系统,即通过编制数据库应用程序来操纵数据库,实现数据有效的管理。
我们以一幅结构图来直观地了解数据库编程的架构如下:
当然,数据库管理人员一般是针对大型的数据库应用而言的,小型数据库应用没有专门的数据库管理人员。可能有些读者会误以为数据库编程就是编写数据库应用程序,其实还应包括数据库的设计,如编制一个工资管理系统,如何将人员信息、工资信息合理组织,设计数据结构,也是数据库编程应该考虑的工作。而dbms是数据库自己的功能,不用我们考虑,我们只要与其接口打交道就行了(如当代开发工具一般都提供odbc用于连接数据库)。不管表在数据库文件中的物理存储方式如何,它都可以看作一组行和列,与电子表格excel的行和列类似。在关系数据库中,行被称为记录,而列则被称为字段。下面是一个员工工资表的例子。
我们可以看到,此表中每一行描述了公司一个特定员工的信息,称为一个记录;而每个记录则包含了相同类型和数量的字段。由此表我们引出如下定义:
表 是一种按行与列排列的相关信息的逻辑组,如上面的公司员工表。
字段 数据库表中的每一列称作一个字段。表结构是由其包含的各种字段定义的,每个字段描述了它的一个属性值。字段可包含各种字符、数字甚至图形(如保存员工的照片)。
记录 存放在表的行,被称为记录。同一个数据表中任意两个记录都不能完全相同。
键 键就是表中的某个(或多个)字段,键可以是唯一的,也可以是非唯一的。唯一键可以指定为主键,用来唯一标识表的每行。例如,在员工表中,员工号是表的主键,因为它唯一地标识了一个员工(这里我们不能用姓名做主键,因为姓名不能唯一标识一个员工,可能会有重名的情况)。
关系 关系就是表与有之间的联系。数据库可以由多个表组成,表与表之间可以以不同的方式相互关联。例如,员工数据库还可以有一个包含某个员工其他信息的表,这些表通过员工号与员工表相关连。
Java Asp PHP .Net XML C/C++ CGI VB Jsp J2ee J2se J2me EJB Servlet Tomcat Resin Struts Weblogic Eclipse ANT GUI JMS Web servise IDEA Webphere Hibernate Spring Jboss Applet Swing Socket Javamail Perl Ajax P2P 安全 模式 框架 测试 开源 游戏
Windows XP Windows 2000 Windows 2003 Windows Me Windows 9.x Linux UNIX 注册表 操作系统 服务器 应用服务器