第二章 开发工具和数据库 本ERP系统采用的数据库是ACCESS 2000数据库,开发语言为Microsoft Visual Basic 6.0(简称VB6.0)。VB6.0作为前台的开发工具,用ACCESS 2000作为后台支持数据库,通过VB6.0的数据库控件来连接ACCESS 2000中并对其编程来实现各种功能。因为ACCESS与Visual Basic用的同为Microsoft Jet数据库引擎,有着最好的兼容性。 内容来自论文无忧网 www.paper51.com 2.1 VB介绍 内容来自论文无忧网 www.paper51.com Visual Basic的前身是QBASIC,语言基础是BASIC。自从微软推出VB后,便成为了程序开发人员的首选工具。据统计,仅在数据库系统开发领域,VB就占了90%的份额。VB是基于对象的可视化程序开发工具,它的优点在于能够快捷、简易地建立Windows应用程序。1998年8月,微软推出了VB 6.0的版本,进一步加强了部件开发的功能。以适用人员来分,可有以下三个版本: 内容来自论文无忧网 www.paper51.com 1. 标准版 针对一般程序设计人员,适合普通应用系统的开发。 内容来自论文无忧网 www.paper51.com
2. 专业版 针对专业程序开发人员,它在标准版的基础上提供了对数据库和Internet的支持。 copyright paper51.com 3. 企业版 适用于专为企业设计应用软件的程序开发人员。 copyright paper51.com 使用VB不需要追求完美的算法和精密的逻辑,而只要充分发挥你的想象力和创造力,就能利用VB开发出各种实用的软件了,不论是小游戏还是大型的客户端/服务器端应用程序,都变得非常简单。 paper51.com 可视化编程的一个突出特点就是其开发环境就像一个百宝箱,很多功能都集成在其之中,这就是IDE(IntegratedDevelopment Environment),即集成开发环境。IDE是指在相应的开发平台中集成了编辑器、编译连接工具、控件器箱辅助工具。例如在VB的集成开发环境中就包括了以下一些主要元素:工具栏、工具箱、工程管理器窗口、属性窗口、窗体设计器、代码编辑器窗口等;和VB类似,Delphi的IDE中具有主控制窗体、对象查看窗口和窗体设计器。同时IDE的设置是很灵活的,开发人员可以按照自己的编程习惯来配置IDE。 内容来自www.paper51.com 从简单的文本文件到各种复杂的关系型数据库,数据库应用程序需要面对各种各样的数据源。Visual basic 6.0提供ADO(Active Data Objects)作为应用程序和OLE-DB连接的桥梁。ADO,即Active数据对象(Active Data Objects):实际是一种提供访问各种数据类型的连接机制。ADO设计为一种极简单的格式,通过ODBC的方法同数据库接口相连。用户可以使用任何一种ODBC数据源,即不仅适合于SQL Server、Oracle、Access等数据库应用程序,也适合于Excel表格、文本文件、图形文件和无格式的数据文件。ADO是基于OLE-DB之上的技术,因此ADO通过其内部的属性和方法提供统一的数据访问接口方法。本系统就是用ADO对象来连接数据库的。Microsoft在Visual Basic 6.0以后的版本都集成了ADO。它与以前Visual Basic的DAO、RDO相比有了很大的提高。DAO(DataAccess Objects)即数据访问对象,是一种面向对象的界面接口。通过DAO/Jet功能可以访问ISAM数据库,使用DAO/ODBCDirect功能可以实现远程RDO功能。RDO(Remote Data Objects)即远程数据对象,为使用代码来创建和操作一个远程ODBC数据库系统的各个部件提供了一个框架。RDO是ODBC API的一个浅层界面接口,是专为访问远程ODBC关系数据源而设计的。ADO是Microsoft公司关于各种类型数据的高等界面,后来逐渐演变成满足所有数据访问需要的完整解决办法。ADO的对象模型是所有数据访问接口对象模型中最简单的一种。Microsoft公司用来访问ADO数据的应用程序界面技术是OLE DB。OLE DB是一种底层编程接口,用来访问许多不同类型的数据源,其中包括消息、文件系统以及其他一些非传统的数据源。OLE DB是一个由Component Object Model(COM)接口组成的集合,用来隐藏创建数据访问服务过程中的细节。OLEDB提供了访问任何数据资源的方法,包括相互关联的数据库和相互不关联的数据库、Email和文件系统、文本和图形以及用户定义的数据对象。 内容来自www.paper51.com 2.2 数据库Access 内容来自www.paper51.com 过去的一些数据库软件,在操作上、数据库建立、维护等等,都相当复杂且不易使用,但是在具备了窗口的GUI(图形用户界面)特性的ACCESS数据库推出之后,数据库的建立不再是困难的事情,我们可以在PC上简单而快速的建立出一套符合自己的数据库。 内容来自论文无忧网 www.paper51.com 不但如此,在ACCESS 2000 推出以后,我们发现数据库的建立更加的快速,但是功能却更加强大,用户不用再去记忆那一大堆的文件名称,或是为数据库的文件管理大费周章,通过ACCESS的人性化管理接口把数据库的管理整理,便于维护;此外,在报表的制作上也是相当容易的,完全的视觉开发向导设计,让人使用起来很舒服。但是美中不足的是ACCESS对于主从式结构的安全性管理不足,由于ACCESS可以快速的通过ODBC连接到数据库服务器上(Database Server),并浏览所有表格或是相关对象转成HTML 内容来自www.paper51.com
撰写VB的程序模块,处理较复杂的问题与需求,该功能是采用事件驱动的模式,类似VB的处理方式。 paper51.com SQL(Structured Query Language,结构查询语言)是一个功能强大的数据库语言。SQL通常使用于数据库的通讯。ANSI(美国国家标准学会)声称,SQL是关系数据库管理系统的标准语言。SQL语句通常用于完成一些数据库的操作任务,比如在数据库中更新数据,或者从数据库中检索数据。使用SQL的常见关系数据库管理系统有:Oracle、 Sybase、 Microsoft SQL Server、 Access等等。虽然绝大多数的数据库系统使用SQL,但是它们同样有它们自立另外的专有扩展功能用于它们的系统。但是,标准的SQL命令,比如"Select"、 "Insert"、 "Update"、 "Delete"、 "Create"和 "Drop"常常被用于完成绝大多数数据库的操作。MS SQLServer 就是用的Transact- SQL。SQL语言有着非常突出的优点,SQL语言是非过程化的语言、统一的语言、是所有关系数据库的公共语言。 http://www.paper51.com 非过程化语言:SQL是一个非过程化的语言,因为它一次处理一个记录,对数据提供自动导航。SQL允许用户在高层的数据结构上工作,而不对单个记录进行操作,可操作记录集,所有SQL 语句接受集合作为输入,返回集合作为输出。SQL的集合特性允许一条SQL语句的结果作为另一条SQL语句的输入。 内容来自www.paper51.com 统一的语言:SQL可用于所有用户的DB活动模型,包括系统管理员、数据库管理员、 应用程序员、决策支持系统人员及许多其它类型的终端用户。 http://www.paper51.com 所有关系数据库的公共语言:由于所有主要的关系数据库管理系统都支持SQL语言,用户可将使用SQL的技能从一个RDBMS(关系数据库管理系统)转到另一个,所有用SQL编写的程序都是可以移植的。 http://www.paper51.com SQL为许多任务提供了命令,其中包括:查询数据、在表中插入、修改和删除记录、建立、修改和删除数据对象、控制对数据和数据对象的存取、保证数据库一致性和完整性等。 内容来自www.paper51.com 以前的数据库管理系统为上述各类操作提供单独的语言,而SQL 将全部任务统一在一种语言中。 copyright paper51.com SQL功能强大,是一种完备的数据处理语言,不仅用于数据库查询,而且用于数据库中的数据修改和更新,概括起来,它可以分成以下几组: copyright paper51.com DML(Data Manipulation Language,数据操作语言):用于检索或者修改数据; http://www.paper51.com DDL(Data Definition Language,数据定义语言): 用于定义数据的结构,比如 创建、修改或者删除数据库对象; copyright paper51.com DCL(Data Control Language,数据控制语言):用于定义数据库用户的权限。 copyright paper51.com
DML组可以细分为以下的几个语句: 内容来自www.paper51.com SELECT:用于检索数据; http://www.paper51.com INSERT:用于增加数据到数据库; 内容来自论文无忧网 www.paper51.com UPDATE:用于从数据库中修改现存的数据; http://www.paper51.com DELETE:用于从数据库中删除数据。 http://www.paper51.com
DDL语句可以用于创建用户和重建数据库对象。下面是DDL命令: http://www.paper51.com CREATE TABLE,ALTER TABLE,DROPTABLE,CREATE INDEX,DROP INDEX。 copyright paper51.com 数据定义语言DDL:它是用来创建和修改数据库结构的一种语句,包括 Create、Alter和Drop 语句。数据操作语言DML:包括数据查询与数据更新。数据查询主要是由Select语句完成,这一点不再赘述。而数据更新所造成的风险大大超过数据查询。数据库管理系统必须在更改期内保护所存储的数据的一致性,确保有效的数据进入数据库,数据库必须保持一致性,DBMS还必须协调多用户的并行更新,以确保用户和它们的更改不至于影响其它用户的作业。 内容来自论文无忧网 www.paper51.com 用于修改数据库内容的 SQL语句主要有以下三个: 内容来自论文无忧网 www.paper51.com
Insert,向一个表中加入新的数据行; http://www.paper51.com Update,更改数据库中已经存在的数据; http://www.paper51.com
Delete,从一个表中删除数据行; copyright paper51.com Insert标准语法: paper51.com INSERT INTO table_name(col1, col2...) VALUES(value1, value2...)。 内容来自www.paper51.com Insert 语句还可以将多行数据添加到目标表中去,在这种形式的 Insert 语句中,新行的数据值不是在语句正文中明确地指定的,而是语句中指定的一个数据库查询。添加的值来自数据库自身的行,在某些特定的状态下,这是非常有用的。多行 Insert 语句为拷贝数据提供了一种紧凑而高效的方法。 paper51.com Update语句用于更新单表中选定行的一列或多列的值。要更新的目标表在语句中定义,Set子句则指定要更新哪些列并计算它们的值。Update语句总是包含Where语句,而且Update语句比较危险,所以您必须明确地认识到Where语句的重要性,Where语句被用来指定需要更新的行。 paper51.com |