【优质文档】人事档案管理系统毕业设计毕业论文.pdf

上传人:白大夫 文档编号:5296809 上传时间:2020-04-03 格式:PDF 页数:40 大小:448.86KB
返回 下载 相关 举报
【优质文档】人事档案管理系统毕业设计毕业论文.pdf_第1页
第1页 / 共40页
【优质文档】人事档案管理系统毕业设计毕业论文.pdf_第2页
第2页 / 共40页
【优质文档】人事档案管理系统毕业设计毕业论文.pdf_第3页
第3页 / 共40页
【优质文档】人事档案管理系统毕业设计毕业论文.pdf_第4页
第4页 / 共40页
【优质文档】人事档案管理系统毕业设计毕业论文.pdf_第5页
第5页 / 共40页
点击查看更多>>
资源描述

《【优质文档】人事档案管理系统毕业设计毕业论文.pdf》由会员分享,可在线阅读,更多相关《【优质文档】人事档案管理系统毕业设计毕业论文.pdf(40页珍藏版)》请在三一文库上搜索。

1、武汉理工大学 毕业设计(论文) 人事档案管理系统 学院(系): 专业班级: 学生姓名: 指导教师: -摘要- 人事档案管理系统是典型的信息管理系统, 其开发主要包括后台数据库的建立和 维护以及前端应用程序的开发两个方面。对于前者要求建立起数据一致性和完整性 强、数据安全性好的库。而对于后者则要求应用程序功能完备, 易使用等特点。 随着科学技术的不断提高, 计算机科学日渐成熟, 其强大的功能已为人们深刻认 识, 它已进入人类社会的各个领域并发挥着越来越重要的作用。DELPHI是面向对象的 开发工具 , 尤其是数据窗口这一能方便而简洁操纵数据库的智能化对象, 首先在短时 间内建立系统应用原型 ,

2、然后, 不断修正和改进 , 直到形成用户满意的可行系统。 关键字:控件、窗体、表。 -前言- 对于大多数国企而言,他们有一套比较系统的人力资源管理理念,并建立了一整 套比较规范的人力资源管理方法。在积极建立企业现代企业管理机制的今天,仅仅靠 原始的手工管理或简单的单机管理,人力资源部门面对大量的信息,无法有效率地将 其中的重要部分提取出来, 并做出相应的判断和处理。 集团管理者的决策只能依据报 表数据,在浪费大量人力、物力的同时无法做到实时监控,难以保证数据的准确性和 及时性。因此,先进的管理思想在企业中实现就成为了一个可望而不可及的目标。 作为计算机应用的一部分, 使用计算机对人事进行管理,

3、 具有着手工管理所无法 比拟的优点 . 例如: 检索迅速、查找方便、可靠性高、存储量大、保密性好、寿命长、 成本低等。这些优点能够极大地提高商场人事管理的效率, 也是科学化、正规化管理 的重要条件。 因此,开发这样一套管理软件成为很有必要的事情, 在下面的各章中我们将以开 发一套人事管理系统为例, 谈谈其开发过程和所涉及到的问题及解决方法。 第一章 为什么要开发一个人事管理系统? 计算机已经成为我们学习和工作的得力助手: 人力资源系统选型时提出了以下要求: 1 ) 具有先进的人力资源管理理念; 2 ) 可以满足多行业、多公司不同的人力资源管理要求; 3 ) 实现集团化管理,实时监控各个专业、省

4、市子公司的人力资源情况; 4 ) 进行多层次数据汇总,为各层次管理者的决策分析提供数据; 5 ) 具有完整的系统接口,满足灵活的数据导入与导出。 第二章 人事管理系统编程环境现状及设计目标简介 2.1 Delphi和 ADO Active Data Objects 结合了 OLE DB的普遍性质那就是在诸如RDO 和 DAO 模 型中可以找到的易于使用的特性.ADO包含了所有可以被OLE DB标准接口描述的数据类 型. 换而言之 ,ADO是可扩充的 , 不需要对你的部件做任何工作. 数据的访问和操纵是任何 实际的应用程序的一个固有部分. 对于数据来说 , 无论它是否是关系型的 , 无论它是否存

5、 在一个 DBMS, 也无论它的存储平台是什么, 数据就是数据一个文件没有必要一定是给定 的二进制格式 . 开发者群体需要具有简单接口的现代的开发工具以快速访问数据. 微软对此问题的 回答是 Universal Data Access(UDA通用数据访问 )体系结构 , 对此,Stephen Rauch 的文 章“Manage Data from MyriadSources with the Universal Data Access Interfaces”中有详细的阐述 (MSJ,1997 年 9 月). 简单的说 ,UDA是一种将 OLE DB应 用于实际的理论 . 所有的都被指向一个数据

6、源一个电子表格, 一条电子邮件消息 , 或一 份 AS/400 文档由 OLE DB接口过滤并以一种通用的格式表示, 这样应用程序能总是以 同样的方式对数据进行访问. 位于 OLE DB上的并处理来自应用程序的调用的中间层被 称作 Active Data Objects (ADO). 它是编写针对带有OLE DB提供者的任何类型的数 据源的推荐标准 . 在 ADO 之前的 RDO 是一种增加 DAO 的客户 / 服务器能力 , 以提高其性能和可扩充性 的当然的方法 . 根本上说来 , RDO是一种位于 ODBC API 的上层的简便的封装 . 它揭示了 了 DAO 数据对象模型中的许多东西,

7、但它缺乏进行数据访问的Jet 引擎. 虽然这将予 ADO 更快的速度 , 但它没法利用该引擎的许多特性, 而且它只能访问关系型的数据库. ADO 2.0 的思想就在于 : 为不同的应用程序访问相同的数据源创建一个更高层的公用 层. 尽管存在数据结构和组织间的物理位置的不同, 编程的接口应该是一样的. 为了找出 RDO 和 ADO 之间的更多的不同 , “ExploringAc tiveX Data Objects from an RDO Point of View,“ 你能在 MSDN 的技术性文章部分中找到它.ADO的出现并不意味着RDO 的结束 . 实际上 , 微软承诺在 可以预见的将来继

8、续支持RDO ADO 2.0 有什么新特点 ? 对于 ADO1.5以前包括 1.5 的版本来说 , 从功能的角度来看 RDO 和ADO 不是完全相等的 . 等同就意味着你可以通过这两种方法解决同样的问题; 它不是指存在重命名的或者优化 的功能相同的对象 . 因此, 移植到 ADO 不是一个简单的事情 . 从另一方面来说 , 一旦你熟练 掌握了 RDO 或 DAO 技术的话 , 学习 ADO 是件相当容易的事情 ADO 2.0 的新特性包括事件处理 , 记录集的延续 , 分层目录结构指针和数据成形, 分 布式事务处理 , 多维数据 , 远程数据服务 (RDS),以及对 C+ 和 Java 的支持

9、的增强 . 在钻研 一些 Visual Basic 代码的时候将会见到所有的这些特性. ADO 对象模型是由相对数量较少的对象组成. 不象 RDO 对象模型 , 每个主要的 ADO 对 象都能被个别的被创建 . 这就意味着 , 举例说吧 , 你不需要在创建有效的记录集对象前创建一个连接. Dim cn As New ADODB.Connection Dim rs As New ADODB.Recordset cn.Open “Biblio“ rs.Open “select * from titles where title like %h“, cn ADO 2.0 对象是 Connection

10、,Command,Parameter,Recordset,Field,Error和 Property.ADO 对象模型也包 括四个类集 : 它们分别是一套相关的Error,Parameter,Property和 Field 对象. 让我们来 看看每个对象的主要特性. Connection 对象提供连接 , 该连接连接的程序中存有它正在访问的数据源. 属性允许你定 义: 连接串 , 命令执行以及连接启动的间隔时间, 数据提供者 ,( 无论临时表位置是应该在 客户端还是在服务器端 ), 和对于数据的访问权限 . 方法有关于如下功能的 : 执行命令 , 打 开和关闭一个连接和管理事务. 在许多地方你

11、可以指定你想使用的提供者: 通过 Provider 属性, 在连接字符串中 , 或者甚至通过 Open方法. 选择你最喜欢的实现方式, 但要保证你没有为同样的连接指定多个的提供者. 缺省的提供 者(当你没有指定你自己的提供者的情况下)是 MSDASQL,针对 ODBC 的 Microsoft OLE DB提供者 . Command对象定义了一个SQL声明, 一个存储过程 , 或任何其他的你可能想让提供者执 行的关于数据的操作 .Command 的属性有 : 当前连接 , 最大允许执行时间和参数集. 一个参 数就是你将它作为参数传递给命令的值. 在这些属性中用以区分一个参数的属性有: 方向 (

12、输入, 输出, 或者两者都有 ), 类型当然还有它们的值 . 记录集对象也许是最典型的ADO 对象, 然而它是最复杂的当中的一个. 它表示命令执 行的结果 , 并且它大多是以数据库的记录集的形式给出. 一个记录集是由以行和域的形式 表示的信息组成 . 它不一定非要映射成关系型数据库的记录. 实际上 , 如同我早些时候解 释的那样 ,ADO是基于 OLE DB并且能被用来可视化地访问任何数据源中的数据, 这数据 源包括非关系型的数据库. 记录集提供了缓冲能力 , 它接受数据的变化 , 并且将这些变化 以批处理的方式传给服务器. 你可以浏览并对记录集的内容分类, 如同列举和提取行 . 你 也能通过

13、如 : 删除, 添加和刷新操作等任何方式修改数据. 记录集存在跟连接的严格的关 系, 但是这不意味着 你总是需要一个打开的连接来获得一个记录集. 你也可以按如下方式进行: Dim RS As New ADODB.Recordset sql = “select * from authors“ RS.Open sql, “Pubs“ 既然 Connection 实际上是数据和命令传送的通道, 所以该对象仍然被创建了, 除了一个 名字叫做 Recordset.ActiveConnection的属性外 , 它是不可见的并工作在后台. Field对象是一列同类的数据 . 它提供了一种这样的编程接口, 即

14、能让你可以对单个 单元的值以及基本的特征如: 类型和大小进行读和写 . 所有给定记录集的 Field对象形成 了一个 Field 集. 如我将在后面向你说明的, Fields 集隐藏着一个引人注目的特性, 它 将再次证明 Recordset 对象的灵活性 . 最后是 Property对象. 每个对象都有属性 . 提供的 使用了 ADO 的对象可能是各种各样的 . 但不存在这样一套属性即包含了所有可能的 OLE DB提供者的静态的属性 . 因此, 任何一个 ADO 对象都有静态和动态的属性. 第一套属 性集: 包括 Name,Type,Value 和 Attributes,都可以通过如下的语法来

15、访 问:obj.PropertyName最开始的三个属性都是自我说明性的.Attributes是一种数字式 的描述符 , 它是以按位的跟提供者的能力有关的一些预定义的属性组合.( 它类似于 COM 服务器的组件分类 ). 动态属性是跟潜在的提供者类型相应的. 它们被归进 Properties集 合, 并可以通过名字查询 . obj.Properties(“propName“) The New Recordset Object 2.2 sql介绍 通过 SQL命令,程序设计师或数据库管理员(DBA )可以: (一)建立数据库的表格。 (包括设置表格所可以使用之空间) (二)改变数据库系统环境设置

16、。 (三)针对某个数据库或表格,授予用户存取权限。 (四)对数据库表格建立索引值。 (五)修改数据库表格结构。 (新建、删除或是修改表格字段) (六)对数据库进行数据的新建。 (七)对数据库进行数据的删除。 (八)对数据库进行数据的修改。 (九)对数据库进行数据的查询。 这几项便是通过 SQL命令可以完成的事情,看起来是不是比起“查询”两个字所 代表的功能要多的多了呢? SQL语法的分类 其实 SQL命令并不是非常多, 可是要把 SQL用到出神入化, 却也只需要短短几个 命令便够, 因为 SQL命令是针对关系型数据库所建立出来的语法叙述,所以 SQL在这 类数据库中所发挥的功能非常的强,以下将

17、针对在VB中常用的 SQL语法基本命令加 以分类介绍。在说明SQL的命令以及使用语法之前,以下将SQL做了的分类,在致上 SQL语法所使用到的类型,可以说都已包含在这些类别当中。 第一类、属性词( Predicates ) 在 SQL命令中用来指明所要选择的记录的方式。如ALL、TOP与 DISTINCT等等。 第二类、声明( Declaration) 针 对 SQL Parameter或 Parameter Query 的 名称 与数 据 类 型 做 声明 ,如 PARAMETERS的声明等等。 第三类、条件子句( Clause) 在 SQL的查询中,利用一些表达式定义出查询的条件,以缩小寻

18、找的范围,如 WHERE。 第四类、运算符( Operator )与操作数( Operation ) 在SQL的查询中, 与 Operation 共同组成表达式(Expression ) , 如 BETWEENAND 运算符与 INNER JOIN操作数。 第五类、函数( Function ) 一些 SQL常见的函数,像是AVG()是求算数平均数的函数。 第六类、 SQL语句( Statement ) SQL的语句,可以说是SQL语法的主体,用来对某一个特定的数据库发出指示, 并返回相关的数据,而SQL的语法结构,基本上可以利用下面 的式子来表示:命令条件子句 例如: SELECT*FROM

19、TAB WHERE TAB.NAME=A 其中的“ FROMWHERE ”便是一个条件子句,其实SQL的语法并不难,您只需 记住这样的一个规则,相信可以很快的了解SQL用法。 SQL语法与命令 SELECT 语句 SELECTpredicate*|table.*|table.field ,table.field2,. AS alias1 ,alias2,. FROM tableexpression ,.IN externaldatabase WHERE. GROUP BY. HAVING. ORDER BY. WITH OWNERACCESS OPTION SELECT 语句包括下面几个部分

20、predicate 如前面所述,包括了ALL,DISTINCT,DISTINCTROW,与 TOP 我们可以利用这样的语句去 限制查询后所得的结果。 * 从指定表格中指定所有的字段。 table 针对被选择出的记录的字段,所指定表格的名称。 field1,field2 想要读取数据的字段名称,如果包含了一个以上的字段,会依照列出的顺序来读取 数据。 alias1,alias2 用来替代在表格实际字段名称的化名。 tableexpression 表格名称或包含我们所想要的数据的表格。 externaldatabase 若使用到不是目前的数据库则将其名字定义在externaldatabase当中。

21、 ALL,DISTINCT,DISTINCTROW,TOP属性词用法 SELECT ALL|DISTINCT|DISTINCTROW|TOP nPERCENT FROM table ALL 若是不指定任何的字段数据,则Microsoft Jet 数据库引擎( database engine )将 会选择所有的字段,并依据所定的条件查询出需求数据集。 例如下面这两个例子将会具有相同的效果,都会从职员表格中返回所有字段的数据。 例如: 若是我们要查询出职员表格中的所有记录,可以通过下面的语句来完成。 SELECT ALL* FROM 职员表格 ; DISTINCT 对某个表格所选择的字段数据,略过

22、重复的情况,也就是说,针对某个字段查询出 来的记录结果是唯一的。例如有许多存放在职员表格的职员 数据,也许会具有相同的姓名,所以若是我们用SQL语句中的 SELECT DISTINCT , 则查询出来的结果将会针对不一样的姓名加以筛选。若是您把 DISTINCT 加以省略,则这样的查询会显示所有的记录。 DISTINCTROW 将整条记录重复的记录忽略掉,而不是只有针对某一个字段的数据。 table 指定查询记录所需要的表格。 例如: SELECT DISTINCTROW 公司名称 FROM 顾客表格 INNER JOIN 订单表格 ON 顾客表格 . 顾客 ID订单表格 . 顾客 ID OR

23、DER BY 公司名称 ; 如果您忽略 DISTINCTROW 则会对每个公司产生一行以下的订单数据。此外,若是 DISTINCTROW只有用在一个表格当中,则会被省略掉。 TOP 从第一条或最后一条开始(利用ORDER BY 条件子句),返回特定条数的数据。 例如: 当您想要知道在 2000 年,班上前 25 名的学生姓名数据时, 您可以输入这样的语句: SELECT TOP 25 学生姓名 FORM 学生表格 WHERE 毕业年份 =1994 ORDER BY 毕业成绩平均分数 DESC ; 如果您没有加上 ORDER BY 这行条件的话,您所得到的数据,将会随机的数据。此 外,在 TOP

24、语句之后,除了可以加上数字以外,还可以利用保留 字 PERCENT 来查询。 例如: SELECT TOP 10 PERCENT学生姓名 FROM 学生表格 WHERE 毕业年份 =1994 ORDER BY 毕业成绩平均 DESC ; PARAMETERS(参数)声明的用法 对于参数型的查询语法中,对参数的名称以及数据类型作声明的操作。 PARAMETERS name datatype,name datatype,. name PARAMETERS的名称。您可以把参数名称当作字符串来使用,若是名称中包含了空字 符串,可以利用中括号来处理,例如:“VBeden ”。 datatype 输入参数

25、的数据类型。 例如: 若是您在查询时,需要机动的输入姓名,可以利用下列的方式完成: PARAMETERS “输入姓名” Text; SELECT* FROM 职员表格 WHERE 姓名=“输入姓名:” ; ORDER BY 条件语句 此条件子句,通常与SELECT 语句合并使用目的是将查询的结果,依照指定字段 加以排序。 SELECT fieldlist FROM table WHERE selectcriteria ORDER BY fieldASC|DESC,field2ASC|DESC,. fieldlist 欲查询的字段名称。其中可以与ALL,DISTINCT ,DISINCTROW,

26、或 TOP 一起来使 用。 table 欲查询的表格名称。 selectcriteria 查询的标准设置。 field1 指定要依照那个字段作为排序的依据,若是你没有加上ORDER BY 查询出的数据 集将不会作排序的操作。 ASC 递增顺序类别。 ( 默认值 ) DESC 递减顺序类别。 例如: 或是我们要将输出数据依据出生的先后次序排列,可以利用下面的命令。 SELECT 姓名,生日 FROM 职员表格 ORDER BY 生日 SELECT LastName,FirstName FROM Employees ORDER BY LastName ASC; IN 条件子句 指定要速胜哪一个外部

27、数据库的表格。( 必须是 Microsoft Jet数据库引擎所可 以连接的数据库,如dBase,Paradox 等等) SELECT|INSERTINTO destination IN path|“path“ “type“|“type;DATABASE=path FROM tableexpression IN path|“path“ “type“|“type;DATABASE=path destination 欲插入数据的外部表格名称。 tableexpression 表格名称或是被读取数据的表格名称。这个参数可以是一个单一的表格名称,或 是一段已经被存储的SQL查询等。 path 包含该表

28、格的完整路径名称。 type 数据库的类型名称,通常是当数据库部属于Jet database 时才会使用。 (例如: dBASE III,dBASE IV,Paradox 3.x,Paradox 4.x,或 Btrieve) 例如:下面这两段的意义相同 PartAFROM Table IN “dBASE IV;DATABASE=C:DBASEDATASALES; PartBFROM Table IN “C:DBASEDATASALES“ “dBASE IV;“ 例如: Microsoft Jet database SELECT 顾客编号 FROM 顾客表格 IN CUSTOMER.MDB WH

29、ERE 顾客编号 Like “A*“; 其中 CUSTOMER.MDBO 为 Jet database 的数据库名称,其中包含了顾客表格。 例如: dBASE III or IV SELECT 顾客编号 FROM 顾客表格 IN “C:DBASEDATASALES“ “dBASE IV;“ WHERE 顾客编号 Like “A*“; 所以当我们使用不同于ACCESS 的数据库时,必须指明该数据库的类型名称。 HAVING 条件子句 指定一特定的分组记录,并满足HAVING 所指定的条件或状态,但条件是针对分 组的条件设置。 SELECT fieldlist FROM table WHERE s

30、electcriteria GROUP BY groupfieldlist HAVING groupcriteria fieldlist 显示被查询的字段名称。 ( 可与 ALL,DISTINCT ,DISTINCTROW,或 TOP 相结合 ) table 欲查询数据的表格名称。 selectcriteria 选取标准。 groupfieldlist 分组记录的字段名称,到多10 个字段。而这些字段的顺序决定最高到最低的分组阶层。 groupcriteria 决定什么样的分组记录要被显示。 HAVING 跟 WHERE 的用法相当类似,不同之处在于HAVING 必须用于 GROUP 之后的分

31、组数据上。 例如: SELECT 分类编 ,Sum(库存数量 ) FROM 产品表格 GROUP BY 分类编号 HAVING Sum( 库存数量 )100 AND 产品名称 LIKE “*纸“; GROUP BY 条件子句 依据指定的字段,将具有相同数值的记录合并成一条。 SELECT fieldlist FROM table WHERE criteria GROUP BY groupfieldlist fieldlist 欲读取的字段名称。 ( 可与 ALL,DISTINCT ,DISTINCTROW,或 TOP 合并使用 ) table 被查询的表格名称。 groupfieldlist

32、分组记录的字段名称,到多10个字段,而这些字段的顺序决定最高到最低的分组层次。 例如: SELECT 姓名,Count( 姓名)AS 职员姓名 FROM 职员表格 WHERE 部门名称 = 业务部 GROUP BY 姓名 FROM 条件子句 指定表格名称或是查询,其中包含列在SELECT 语句的字段数据。 SELECT fieldlist FROM tableexpressionIN externaldatabase fieldlist 表格中的字段名称。 (可与 ALL,DISTINCT,DISTINCTROW,或 TOP 相结合 ) tableexpression 表格名称,或多个表格的算

33、式。 externaldatabase 若该表格参考到外部的数据库时,将其完整的路径名称记下。 例如: 从职员表格下,查询出所有姓名字段的数据(只有姓名字段被查询,其他则不显示) 。 SELECT 姓名 FROM 职员表格; WHERE 条件子句 指定查询的条件与限制。 SELECT fieldlist FROM tableexpression WHERE criteria fieldlist 字段名称。 ( 可与 ALL,DISTINCT,DISTINCTROW,或 TOP相结合 ) tableexpression 表格名称,或多个表格的算式。 criteria 查询的结果,必须依照这一限制

34、标准。 例如: 要查询出职员表格中,所有姓氏是李的数据,可以用下面的语句。 SELECT 姓名 FROM 职员表格 WHERE 姓氏= 李 ; BETWEEN.AND 运算符 决定某一人数值是否介于特定的范围之内,此运算符只可以用在SQL的语句中。 exprNotBETWEEN value1 AND value2 expr 指定要加以计算的字段与表达式的组合。 value1,value2 所指明的数值范围。 例如: 若是要从职员表格查询出所有年龄介于25-30 岁的员工, 可以利用下面的程序 来做。 SELECT 姓名, 年龄 BETWEEN 25 AND 30 FROM 职员表格; LIKE

35、 操作数 用来将一字符串与另一特定字符串样式(pattern)比较,并将符合该字符串样式 的记录过滤出来。 expression LIKE “pattern“ expression 使用在 WHERE 条件子句, SQL表达式。 pattern 用以比较的字符串样式。 例如: 若是你要查询出所有以“李”为首的姓氏,可以利用下面的式子。 Like “ 李*“ LIKE 操作数的多种范例: 1、多个字符: (1)“a*a“ 可筛选: “aa“,“aBa“,“aBBBa“,不能筛选: “aBC“ (2)“*ab*“ 可筛选: “abc“,“AABB“,“Xab“,不能筛选: “aZb“,“bac“

36、2、特殊字符: “a“*”a“ 可筛选: “a*a“ ,不能筛选: “aaa“ 3、单一字符: “a?a“ 可筛选: “aaa“,“a3a“,“aBa“,不能筛选: “aBBBa“ 4、单一数字: “a#a“ 可筛选: “a0a“,“a1a“,“a2a“,不能筛选: “aaa“,“a10a“ 5、字符范围: “a - z”“ 可筛选: “f“,“p“,“j“,不能筛选: “2“,“ 修改数据 对表中已有数据进行修改,语句句法: UPDATE 表名 SET 列名 1表达式 1,列名 2表达式 2, WHERE 条件; 例如:对下表 Student NONAMEAGE 1001A12 1002B1

37、4 将 B的年纪改为 18;应该执行以下语句: UPDATE STUDENT SET AGE=18 WHERE NAME=B; 删除数据 删除表中已有数据,不能删除不存在的数据。 语句句法 : DELETE FROM 表名 WHERE 条件; 例如: 对下面 Student 表进行删除,要删除其中年纪为12 的学生; NONAMEAGE 1001A12 1002B14 DELETE FROM STUDENT WHERE AGE12; 表结构的修改 在已存在的表中增加新列,语句句法: ALTER TABLE 表名 ADD(新列名 数据类型 ( 长度) ; 例如: ALTER TABLE STUD

38、ENT ADD (DEPARTMENT CHAR(8); b. 增加已有列的数据类型。 例如: ALTER TABLE STUDENT MODIFY(NAME VARCHAR2(25); 表的删除 将已经存在的表删除,语句句法: DROP TABLE 表名; 例如: DROP TABLE EMP; 查询语句 SELECT 命令的语法为: SELECT DISTINCT|ALL *|模式名 . 表名| 视图名| 快照名 .*| 表达式 列别名 , 模式名 . 表名| 视图名| .*| 表达式 列别名 FROM 模式名 . 表名| 视图名 | 快照名 数据库链名 表别名 , 模式名 . 表名| 视

39、图名 | 快照名 数据库链名 表别名 WHERE 条件 START WITH 条件 CONNECT BY 条件 GROUP BY 表达式 ,表达式 HAVING条件 UNION|UNION ALL |INTERSECT|MINUSSELECT命令 ORDER BY 表达式 | 位置 ASC|DESC , 表达式 | 位置ASC|DESC 例如:对于 STUDENT 表: NONAMEAGE 1001AE12 1002BT14 (1) 查询年纪为 12 的学生姓名; SELECT STUDENT.NAME FROM STUDENT WHERE AGE=12; (2) 查询年纪在 12 至 16

40、岁之间的学生姓名; SELECT STUDENT.NAME FROM STUDENT WHERE AGE BETWEEN 12 AND 16; (3) 查询年纪 不在 12 至 16 岁之间的学生姓名; SELECT STUDENT.NAME FROM STUDENT WHERE AGE NOT BETWEEN 12 AND 16; (4) 查询所有姓名以 A开头的学生的姓名; SELECT STUDENT.NAME FROM STUDENT WHERE NAME LIKE A%; (5) 列出所有学生年纪的和,年纪的平均值,最大值,最小值,最大值与最小值之间 的差值; SELECT AVG(

41、AGE), SUM(AGE), MAX(AGE), MIN(AGE), MAX(AGE)-MIN(AGE); (6) 将所有学生按学号顺序升序排列; SELECT * FROM STUDENT ORDER BY NO DESC; (7) 将所有学生按学号顺序升序排列; SELECT * FROM STUDENT ORDER BY NO ASC; 第三章 关键问题 : 使用关系型数据库 使用 DELPHI 7.0 实现关系型数据库 数据库的概念 使用中文 Access 2000 可以从单一的数据库文件中组织用户信息。在此文件中, 可将数据分开放在名为“表”, 也就是前面所说的“数据表”的容器中,

42、然后可使用 联机窗体让网络用户查看、添加并更新表中的数据、“查询”查找并检索数据、使用 “报表” 按特定的布局分析或打印的数据。 此外, 通过创建数据访问页还能从Internet 上查看与更新或分析数据。与前面所介绍的两个软件一样,为了存储与使用数据,可 对每一类信息创建一张表,此后就能在窗体、报表、或数据访问页中将多个表中的数 据组织到一起,以及定义表之间的关系,以便于查找和检索仅满足指定条件的数据。 初学者应注意,这里的“窗体”是前两个软件中没有的对象。 在使用中文 Access 2000建立用于构成数据库的表、窗体和其他对象之前,设计 数据库是很重要的。因为无论是使用中文Access 2

43、000的数据库或是项目,都需要一 个能够有效而且准确、及时地完成所需功能的数据库。 来打开一个 ACCESS 数据库。 首先,数据源名是 mydb ,也就是和系统共同认可的一个数据源名,下面,就使用 这个数据源名,与系统进行对话。 第一步,建立 ADO 对象连接。进行这一步的目的是告诉系统我将要使用数据库了, 请为我建立一个到数据库的连接。这一步的语法是:set 变量名 =server.createobject(“adodb.connection“).例: set objconn=server.createobject(“adodb.connection“) 下面来分析这个语句。首先,objc

44、onn 这个变量是我们自已定的,它代表一个数 据库连接。至于 server.createobject(“adodb.connection“)这个语句,一看就可以 大致猜出它们的意义, 不就是建立一个ADO 对象吗?对了, 什么是 ADO 对象呢?进行 每一个数据库的编程时,都要进行这一步。至于道理,我们慢慢会明白的。 第二步,利用建立的这个连接,来告诉系统要打开的数源,这个数据源就是设置 的数据源名。 它就是 mydb 。利用它,可以很方便地打开一个数据库。以我们上一课的 设置为例,打开我们的db2.mdb,可以使用以下语法: objconn.open “dsn=mydb;database=d

45、b2;uid=;pwd=;“ 其中 dsn 就是所定的数源名。 database 就是数据库名。 uid 是 user ID ,即用户 名,而 pwd则是这个用户的访问密码, 这只有在我们为这个数据库加入了密码之后才 有用,我们暂且不讨论它。 第一步和第二步出现了两个objconn, 的确,第一步的语句 是将一个到数据库的连接赋予objconn 这个变量,也就是说,经过第一步,objconn 实际上就是代表了这个连接。这样自然可以用这个连接的open 方法来打开一个数据 库了。 打开了这个数据库了, set objconn=server.createobject(“adodb.connecti

46、on“) objconn.open “dsn=mydb;database=db2;uid=;pwd=;“ 第四章 系统总体规划 系统总体规划 系统功能 1、 登陆界面: 2、. 功能选择模块:,进入主界面后可以进行功能的选择。 3、 员工信息模块:按员工信息进行档案登记。 4、 合同管理模块:对购销合同进行管理。 5、工资管理模块:对人事工资进行管理。 6、退出系统模块:退出系统返回WIDNOWS界面。 第五章 系统具体实现 和以前的版本相比, DELPHIP 在多数地方已不需要写代码,表单和对象的属性提 供了控制许多对象的方法,但是总有些事情是要用程序去实现的。 511 系统具体实现 登陆界

47、面 在登陆界面的文本输入密码,方可进入系统。使用了IF THEN 语句 主界面 主界面包含 1、员工档案输入:按员工信息进行档案登记。 2、员工档案修改:以表格的方式对员工档案进行修改。 3、, 工资管理模块:对人事工资进行管理。 4、考勤模块。 5、统计模块:对部门,职位,职级人数进行统计。 513 各个模块的实现 1、员工信息模块:按员工信息进行档案登记。 unit Unit2; interface uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, dbcgrid

48、s, DB, ADODB, Grids, DBGrids, ExtCtrls, DBCtrls, StdCtrls, Mask; type TForm2 = class(TForm) ADOTable1: TADOTable; DataSource1: TDataSource; DBNavigator1: TDBNavigator; Label1: TLabel; DBEdit1: TDBEdit; Button1: TButton; DBEdit2: TDBEdit; DBEdit3: TDBEdit; DBEdit4: TDBEdit; DBEdit5: TDBEdit; DBEdit6:

49、 TDBEdit; DBEdit7: TDBEdit; Label2: TLabel; Label3: TLabel; Label4: TLabel; Label5: TLabel; Label6: TLabel; Label7: TLabel; Label8: TLabel; DBEdit8: TDBEdit; Label9: TLabel; DBEdit9: TDBEdit; Label10: TLabel; Label11: TLabel; DBEdit10: TDBEdit; DBEdit11: TDBEdit; Label12: TLabel; Label13: TLabel; DBEdit12: TDB

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 其他


经营许可证编号:宁ICP备18001539号-1