毕业设计(论文)-VB6.0模拟ATM机系统软件的设计与开发.doc_第1页
毕业设计(论文)-VB6.0模拟ATM机系统软件的设计与开发.doc_第2页
毕业设计(论文)-VB6.0模拟ATM机系统软件的设计与开发.doc_第3页
毕业设计(论文)-VB6.0模拟ATM机系统软件的设计与开发.doc_第4页
毕业设计(论文)-VB6.0模拟ATM机系统软件的设计与开发.doc_第5页
已阅读5页,还剩33页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

毕毕 业业 设设 计计( 论论 文文) 模拟模拟 ATM 机系统软件的设计与开发机系统软件的设计与开发 论论文作者姓名:文作者姓名: 申申请请学位学位专业专业: : 申申请请学位学位类别类别: : 指指导导教教师师姓姓名名( (职职称称) ): : 论论文提交日期:文提交日期: 模拟模拟 ATM 机系统软件的设计与开发机系统软件的设计与开发 摘摘 要要 二十世纪末,随着金融服务的迅速发展,银行提款机已经发展成了各大银 行金融服务战略中的重要一环,同时,银行提款机系统也经历了持续的更新换 代,为广大用户提供了更加便捷和人性化的服务。模拟 ATM 系统就是对提款 机操作系统在个人 PC 上及主流操作平台上的编程实现,其开发主要包括后台数 据库的建立和维护以及前端应用程序的开发制作两个方面。对于前者要求建立 起数据一致性和完整性强、数据安全性好的库。而对于后者则要求应用程序功 能完备,易使用,界面友好等特点。本系统采用 VB6.0,微软 SQLSERVER2000, 实现了用户身份的认证、取款、转帐、交易明细的查询等功能。分析并解决实 现中遇到的若干问题,例如数据库资料如何实现更新,文本框的文字输出需要 用到什么技术,如何实现中英文两种界面,用户服务功能如何实现等等。 关键词关键词: 模拟 ATM 银行系统;ADO 控件;VB6.0;SQLSERVER2000 The design and development of ATM simulation system Abstract At the end of the 20th century, as the fast development of financial services, ATM machines have become the major part of the financial services strategy of every bank, bank teller system has undergone a continuous upgrading, supplied a more efficient and human services for the customers. ATM simulation system is the operating system of personal teller machines on the PC platform and the mainstream of programming. The development includes two aspects. The one is establishment and maintenance of background database, the other is development of front-end applications. The former requires establishing a consistency and integrity of strong data security for good. And for the latter demands the application functions are perfect, and easy-to-use and friendly interface, and other features. The ATM system describes the structure and function module of the entire layout of the system; The system realized the user authentication, withdrawals, transfers, details of the transaction inquiries, with the Visual Basic 6.0, Microsoft SQL SERVER2000; The system analyzed and resolved encountered umpteen issues in the realization, for example, how to realize the database updated, whats the necessary technology is to realize the text areas outputting, how to realize the English and Chinese interfaces ingeniously, and how to realize user services functions and so on. Key words: ATM simulation system ; ADO; VB6.0 ;SQLSERVER2000 目目 录录 论文总页数:26 页 1引言.1 2开发模拟 ATM 系统的目的与意义.1 2.1 ATM 起源.1 2.2 模拟 ATM 系统的意义.1 2.2.1现实意义.1 2.2.2学习意义.2 3模拟 ATM 系统开发平台简介.2 3.1 Windows 下的 Visual Basic 编程环境简介.2 3.1.1面向对象的编程.2 3.1.2Visual Basic 6.0 特点介绍 .2 3.1.3生成帮助文件及版本信息.4 3.2 SQLSERVER2000 数据库简介.5 3.2.1数据库的概念.5 3.2.2微软 SQLSERVER2000 简介.5 3.3 VB6.0 与 SQL 数据库二者的连接(ADO).5 4系统分析设计.6 4.1 系统功能简介.6 4.2 系统流程图.7 4.3 系统开发主要应用技术.7 4.3.1系统前台设计.7 4.3.2后台数据库设计.8 5系统功能的实现.9 5.1 欢迎界面实现.9 5.2 登陆的实现.9 5.3 主界面实现.12 5.4 查询余额功能的实现.13 5.5 取款功能的实现.14 5.6 转账功能的实现.16 5.7 密码修改功能的实现.19 5.8 查询交易明细功能的实现.21 5.9 其余界面及函数.21 6系统运行结果及工作总结.23 6.1 系统测试及运行结果.23 6.2 系统有待改进之处.23 6.3 系统中遇到的问题及解决方法.23 结 论.24 参考文献.24 致 谢.25 声 明.26 第 1 页 共 26 页 1引言引言 随着时代的进步,社会生产力高速发展,新技术层出不穷,信息量急剧膨 胀,整个人类社会已成为金融化信息化的社会,并开始朝着自动化智能化发展。 以往人们去银行存款取款进行各种财务处理都必须通过柜台,随着越来越多的 人们进入银行,使用银行的服务,使银行出现了工作效率低,顾客等待时间过 长等等问题,既加大了银行工作人员的工作量,又使得人们享受银行服务的质量 大幅度降低,所以银行交易的自动化智能化已经成为了一个不可逆转的趋势,而 且必将成为各个银行今后发展的重点。 系统在前台采用了 Visual Basic6.0 这一功能全面,方便易学的语言作为开 发语言,而后台则用功能强大的 SQLSERVER2000 数据库加以实现。 2 2开发模拟开发模拟 ATMATM 系统的目的与意义系统的目的与意义 2.12.1 ATMATM 起源起源 现代意义上的 ATM 和 POS 系统始于二十世纪 60 年代末。最早的 ATM 机 只是现钞发放机。1976 年,英格兰的巴克莱银行安装了第一台现钞发放机。它 并没有使用磁条卡,而是向用户发行纸券,用户将纸券插入机器,取出面值为 10 英镑的钞票。现代 ATM 机的想法来自于唐维泽尔。1968 年,当他在达拉斯 银行排队等候的时候,萌发了这个想法。之后,他建议自己的雇主 Docutel 研 制这种机器。研发中最重要的过程是将信息加密后存储在磁条上,然后将磁条 加在塑料卡片上。研制成功后,Doctuel 将 ATM 机卖给了纽约化学银行。1969 年,化学银行把这个机器安装在洛克菲勒中心的办公室。虽然 Docutel 的 ATM 机器使用了现代的磁条技术,但和今天的技术相比,还是显得比较原始。它只 能用于取现钞,而且只能脱线使用。机器用特殊的方法打印下交易的纪录。直 到 20 世纪 70 年代初,ATM 技术才发展到我们今天的水平。起初,ATM 主要 用来处理信用卡,到了 1972 年,克里夫兰城市国家银行成功地引进了一种可在 ATM 机上使用的没有透支功能的卡片。如今,ATM 机发展了更多功能,包括 存钱、支票和储蓄账户之间相互转账,付款等等。同时,ATM 实现了与计算机 相连接,使客户可以实时地了解账户余额和支付情况。多台 ATM 机与银行主 机相连,就逐渐形成了 ATM 网络。 2.22.2 模拟模拟 ATMATM 系统的意义系统的意义 2.2.1现实意义现实意义 目前全球共有 ATM 超过 120 万台,平均每 5 分钟新增一台,连南极科考 基地都安装了 ATM,每年通过这些机器进行的金融交易超过 400 亿笔。从这些 数据可以看出银行自动提款机已经进入了人们的日常生活,我们对自助式服务 第 2 页 共 26 页 已经不再陌生,并成为了人们日常生活习以为常的一部分,确实的给人们的生 活带来了极大的便利。经过了近 40 年的发展,ATM 也取得了长足的进步,从 早期的纸券取钱,到现在的一卡在手,ATM 机也从早期的简单机器,后期的系 统集成式机器,发展成了如今的基于个人 PC 上操作系统下的智能化系统,拥 有了更多更全更加方便的功能。随着个人 PC 的快速发展,越来越多的 ATM 机 逐步替换为了 PC 机,也采用了基于 WINDOWS XP 系统下的操作系统,具有 了更加人性化,更加友好的操作界面,也具有了更快的响应速度,这也使得各 个银行之间的 ATM 操作平台有了逐步统一的可能,加强各银行的服务联系, 使客户跨行进行 ATM 交易将更加便捷,资费也能够得到降低。本次开发的 ATM 系统就是基于 WINXP 系统下的具有友好界面的软件系统 2.2.2学习意义学习意义 开发一个软件系统,从需求分析到流程图的绘制及模块的分析,再到最后 的数据库设计 及代码的编写实现都要自己动手一步一步的来解决完成,这个过 程对于自己在大学所学的知识是一个非常好的检验,对动手能力及思维能力也 是一次非常好的锻炼。希望通过此次的研究学习,认清自己的不足之处,不断 的去学习完善自己的理论知识,逐步提高动手能力,为以后的工作打下坚实的 基础。 3模拟模拟 ATM 系统开发平台简介系统开发平台简介 3.13.1 WindowsWindows 下的下的 VisualVisual BasicBasic 编程环境简介编程环境简介 3.1.13.1.1 面向对象的编程面向对象的编程 微软公司的 Visual Basic 6.0 是 Windows 应用程序开发工具,使目前最为广 泛的、易学易用的面向对象的开发工具。Visual Basic 提供了大量的控件,这些 控件可用于设计界面和实现各种功能,减少了编程人员的工作量,也简化了界 面设计过程,从而有效的提高了应用程序的运行效率和可靠性。故而,实现本 系统 VB 是一个相对较好的选择。 3.1.23.1.2 VisualVisual BasicBasic 6.06.0 特点介绍特点介绍 Vsual Basic6.0 是一种可视化的、面对对象和条用事件驱动方式的结构化高 级程序设计,可用于开发 Windows 环境下的种类应用程序。它简单易学、效率 高,且功能强大,可以与 Windows 的专业开发工具 SDK 相媲美,而且程序开 发人员不必具有 C/C+编程基础。在 Visual Basic 环境下,利用事件驱动的编程 机制、新颖易用的可视化设计工具,使用 Windows 内部的应用程序接口(API)函 数,以及动态链接库(DLL)、动态数据交换(DDE)、对象的链接与嵌入(OLE)、 开放式数据访问(ODBC)等技术,可以高效、快速地开发出 Windows 环境下功 能强大、图形界面丰富的应用软件系统。总的来说,Visual Basic 具有以下特点: 第 3 页 共 26 页 (1)可视化编程: 用传统程序设计语言设计程序时,都是通过编写程序代码来设计用户界面, 在设计过程中看不到界面的实际显示效果,必须编译后运行程序才能观察。如 果对界面的效果不满意,还要回到程序中修改。有时候,这种编程-编译-修改 的操作可能要反复多次,大大影响了软件开发效率。Visual Basic 提供了可视化 设计工具,把 Windows 界面设计的复杂性“封装”起来,开发人员不必为界面设 计而编写大量程序代码。只需要按设计要求的屏幕布局,用系统提供的工具, 在屏幕上画出各种“部件”,即图形对象,并设置这些图形对象的属性。Visual Basic 自动产生界面设计代码,程序设计人员只需要编写实现程序功能的那部分 代码,从而可以大大提高程序设计的效率。 (2)面向对象的程序设计 Visual Basic 应用面向对象的程序设计方法(OOP),把程序和数据封装起来 作为一个对象,并为每个对象赋予应有的属性,使对象成为实在的东西。在设 计对象时,不必编写建立和描述每个对象的程序代码,而是用工具画在界面上, Visual Basic 自动生成对象的程序代码并封装起来。每个对象以图形方式显示在 界面上,都是可视的。 (3)结构化程序设计语言 Visual Basic 是在 BASIC 语言的基础上发展起来的,具有高级程序设计语 言的语句结构,接近于自然语言和人类的逻辑思维方式。Visual Basic 语句简单 易懂,其编辑器支持彩色代码,可自动进行语法错误检查,同时具有功能强大 且使用灵活的调试器和编译器。 Visual Basic 是解释型语言,在输入代码的同时,解释系统将高级语言分解 翻译成计算机可以识别的机器指令,并判断每个语句的语法错误。在设计 Visual Basic 程序的过程中,随时可以运行程序,而在整个程序设计好之后,可 以编译生成可执行文件(.EXE),脱离 Visual Basic 环境,直接在 Windows 环境 下运行。 (4)事件驱动编程机制 Visual Basic 通过事件来执行对象的操作。一个对象可能会产生多个事件, 每个事件都可以通过一段程序来响应。在用 Visual Basic 设计大型应用软件时, 不必建立具有明显开始和结束的程序,而是编写若干个微小的子程序,即过程。 这些过程分别面向不同的对象,由用户操作引发某个事件来驱动完成某种特定 的功能,或者由事件驱动程序调用通用过程来执行指定的操作,这样可以方便 编程人员,提高效率。 第 4 页 共 26 页 (5)访问数据库 Visual Basic 具有强大的数据库管理功能,利用数据控件和数据库管理窗口, 可以直接建立或处理 Microsoft Access 格式的数据库,并提供了强大的数据存储 和检索功能。同时,Visual Basic 还能直接编辑和访问其他外部数据库,如 dBASE,FoxPro,Paradox 等,这些数据库格式都可以用 Visual Basic 编辑和处 理。 Visual Basic 提供开放式数据连接,即 ODBC 功能,可通过直接访问或建立 连接的方式使用并操作后台大型网络数据库,如 SQL Server,Oracle 等。在应 用程序中,可以使用结构化查询语言 SQL 数据标准,直接访问服务器上的数据 库,并提供了简单的面向对象的库操作指令和多用户数据库访问的加锁机制和 网络数据库的 SQL 的编程技术,为单机上运行的数据库提供了 SQL 网络接口, 以便在分布式环境中快速而有效地实现客户/服务器(client/server)方案。 (6)动态数据交换(DDE) 利用动态数据交换(Dynamic Data Exchange)技术,可以把一种应用程序中 的数据动态地链接到另一种应用程序中,使两种完全不同的应用程序建立起一 条动态数据链路。当原始数据变化时,可以自动更新链接的数据。Visual Basic 提供了动态数据交换的编程技术,可以在应用程序中与其他 Windows 应用程序 建立动态数据交换,在不同的应用程序之间进行通信。 (7)对象的链接与嵌入(OLE) 对象的链接与嵌入(OLE)将每个应用程序都看做是一个对象(object),将不 同的对象链接(link)起来,再嵌入(embed)某个应用程序中,从而可以得到具有声 音、影像、图像、动画、文字等各种信息的集合式的文件。OLE 技术是 Microsoft 公司对象技术的战略,它把多个应用程序合为一体,将每个应用程序 看做是一个对象进行链接和嵌入,是一种应用程序一体化的技术。利用 OLE 技 术,可以方便地建立复合式文档(compound document),这种文档由来自多个不 同应用程序的对象组成,文档中的每个对象都与原来的应用程序相联系,并可 执行与原来应用程序完全相同的操作。 (8)动态链接库(DLL) Visual Basic 是一种高级程序设计语言,不具备低级语言的功能,对访问机 器硬件的操作不太容易实现。但它可以通过动态链接库技术将 C/C+或汇编语 言编写的程序加入到 Visual Basic 应用程序中,可以像调用内部函数一样调用其 他语言编写的函数。此外,通过动态链接库,还可以调用 Windows 应用程序接 口(API)函数,实现 SDK 所具有的功能。 第 5 页 共 26 页 3.1.33.1.3 生成帮助文件及版本信息生成帮助文件及版本信息 专业水平的软件通常都带有联机帮助功能。无论写出来的程序是要给大量 的用户使用,还是仅仅局限于公司内部有限的使用者,我们都应该为用户提供 详细的、易于理解的联机帮助文档。微软的 Help Workshop4.0 是一套独立于 Visual Basic 的用来协助我们创建、运行于 32 位 Windows 操作系统下的帮助 文件的工具。使用它我们可以为我们编写的应用程序生成一组帮助文件。为了 是程序显得更具有专业风格,首先可以在其中加入通常的应用程序信息。这些 信息包括公司名称、版本号、修订号以及其他类似信息。Visual Basic 允许你使 用 APP 对象来保存这些信息,APP 对象是一个预定义对象,不需要在程序中创 建它。APP 对象的大多数属性被应用程序用来提供常规的信息,通过使用这些 APP 提供的属性,可以在应用程序和用户之间交流重要信息,在项目属性框中 可以设置它的属性。 3.23.2 SQLSERVER2000SQLSERVER2000 数据库简介数据库简介 3.2.13.2.1 数据库的概念数据库的概念 数据库是一种存储数据并对数据进行操作的工具。数据库的作用在于组织 和表达信息,简而言之,数据库就是信息的集合。计算机的数据库可以分为两 类:非关系数据库(flat-file)和关系数据库(relational)。关系数据库中包含 了多个数据表的信息,数据库含有各个不同部分的术语,象记录、域等。 3.2.23.2.2 微软微软 SQLSERVER2000SQLSERVER2000 简介简介 SQL Server 2000 是 Microsoft 公司推出的 SQL Server 数据库管理系统的 最新版本该版本继承了 SQL Server 7.0 版本的优点同时又比它增加了许多更先 进的功能具有使用方便可伸缩性好与相关软件集成程度高等优点可跨越从运行 Microsoft Windows 98 的膝上型电脑到运行 Microsoft Windows 2000 的大型多 处理器的服务器等多种平台使用 ADO 是访问由微软推出的最新.功能最强,且容易使用的数据访问实例 (OLEDB)的应用程序接口. 我们就是通过它以及创建 Active X 数据对象 3.33.3 VB6.0VB6.0 与与 SQLSQL 数据库二者的连接(数据库二者的连接(ADOADO) ADO Recordset 来访问 SQLSEVER2000 上的 ODBC 数据源.使用 ADO 控件 可以方便的在 VB6 中访问 ODBC 数据库,但是通过直接放置 ADODS 控件来获 得 ADO 的数据连接比较麻烦,可以在 VB 工程中创建一个公共数据模块,将 ADO 控件的初始化、建立连接、关闭连接等操作都写到函数中,这样就可以在 工程的其他模块中共享调用这个 ADO 连接。一次完整的 ADO 调用操作分为如 下几个步骤: (1)打开 ADO 到数据库的连接,初始化 ADO RECORDSET 集。 第 6 页 共 26 页 (2)通过写入 SQL 语句执行查询并返回查询结果 RECORDSET 集;或者可 以通过写入 SQL 语句执行相应数据库操作。 (3)释放 RECORDSET 集,关闭数据库连接。需要注意的是,每个动态创建 的 ADO 同时只能被一个过程调用,如果需要进行多表并行操作,可能需要在 公共数据模块中建立多个动态 ADO。在本次设计中,由于我只设计了一个主模 块,所以直接将 ADO 控件的初始化、建立连接、关闭连接等操作都写到了最先 调用的身份认证函数中,就已经可以满足我对数据库的访问操作. 通过 ADO 控件使 Visual Basic 程序与 SQLSERVER 数据库之间架起了一座 桥梁,我们可以很方便的通过修改程序中 ADODC 的参数,并通过 SQL 语句来指 向数据库的不同部分,从而方便的对数据库进行各种操作. 4系统分析设计系统分析设计 4.1 系统功能简介系统功能简介 经过对比真实的银行提款机系统,本系统实现以下内容: 1.可以选择中文和英文两种语言服务 2 身份认证 3.密码修改 4.取款. 5.转帐. 6.查询余额. 7.查询交易明细 第 7 页 共 26 页 4.2 系统流程图系统流程图 登陆 身份验证 选择服务 查询余额取款 转账修改密码查询明细 退出 图 1 系统流程图 4.3 系统开发主要应用技术系统开发主要应用技术 WINDOWS XP 是时下最流行的电脑操作系统稳定性安全性都非常不错, 而随着 ATM 提款机逐步采用个人电脑,以及性能的升级,WINXP 也有了可能 成为这些提款机的操作系统,所以本次系统也在 WINXP 下进行开发。由于需 要开发出前台客户友好界面及后台数据库系统,而对于前台只要能满足其界面 开发需要即可,所以我采用了相对简单易用并且功能强大的 VB6.0,后台数据 库则采用了与之相连方便且功能同样强大的 SQLSERVER2000。采用以上两个 开发软件完全能够满足 ATM 模拟系统的开发需要。 4.3.14.3.1 系统前台设计系统前台设计 系统主要是由前台(客户操作界面)与后台(数据库)两个部分组成。前 台部分整个代码程序采用一个主模块,在里面定义程序全局变量,把各种功能 函数写入其中,每个界面制作一个独立窗体,在各个窗体代码中来调用主模块 中的各个函数来,来实现相应功能。界面部分由于 08 年奥运会的临近,系统采 用了几副有关北京 08 奥运会的卡通图片,让界面整体突出一种奥运气氛。通过 可爱的卡通动物也实现了友好亲切的操作氛围。 第 8 页 共 26 页 4.3.24.3.2 后台数据库设计后台数据库设计 经过充分考虑,认为系统并不需要非常复杂的数据库系统就能够达到模拟 ATM 系统的效果,所以建立了一个名为 XQQATM 的 SQL 服务器,创建了名 为 USER 的数据库,用户登陆名为 sa 密码为空,并在 ODBC 数据源中将 USER 数据库添加进去。其中实际上只运用到两个表,一个用户信息表和一个用户操 作表。 表 1 用户信息表 用户信息表(如表 1)用以存放用户的卡号,密码,存款金额等信息,由于该 系统是为了模拟运用,故安全要求不高,所以密码采用了明文方式存放,便于 使用查看。本次模拟系统并不具有创建新用户的功能,用户信息表上的内容都 是为了模拟而手动添加的样本用户。 表 2 用户操作表 用户操作表(如表 3)则用来记录用户在 ATM 机上所使用的服务,它包括了所有 用户对 ATM 的操作信息,包括时间,操作类型,金额,转帐卡号,成功与否 等等。用户查询明细的功能就是通过搜集检索这张表来实现。同时管理人员也 第 9 页 共 26 页 可以从这张表上很方便的查阅用户使用情况。当然,真实的银行 ATM 系统, 其后台的数据库系统肯定是十分庞大的一个系统,对保密性的要求也非常的高 ,在这次的模拟中当然不可能达到那样的要求。 5系统功能的实现系统功能的实现 5.15.1 欢迎界面实现欢迎界面实现 图 2 欢迎界面 在欢迎界面(如图 2)我们可以自由的选择两种语言,分别为我们最常用的中 文和英语,在这里主模块中定义了一个非常重要的 INT 整型变量 i,通过 i 的值 来决定所选择的服务。任意点击一种服务都将进入登陆界面。 Private Sub Command1_Click() i = 2 当点中文按钮时,i 的值就被赋为了 2,在后面的操作中,i 的值就 将始终为 2,用以区别所选语言服务 Unload Form1 Form2.Show End Sub Private Sub Command2_Click() i = 1 点 ENGLISH 按钮时 i 的值赋 1 Unload Form1 Form2.Show End Sub 5.25.2 登陆的实现登陆的实现 在登陆界面有两种语言可以为用户服务,一是中文,而是英文。选择两种 语言的功能和界面背景实际上都是完全一致的,只是语言文字不同。如图 3 为 选择中文的界面: 第 10 页 共 26 页 图 3 登陆界面(中文) 如果点击的是 ENGLISH, 则登陆界面为图 4 图 4 登陆界面(英文) 这里的两个界面并非通过两个窗体单独实现而是共用一个窗体,通过判断 i 的值,对 label 中的 CAPTION 进行相应的中文和英文赋值。后面的操作界面 同样也是采用这种方法,就不再做英文的界面介绍。这里把默认的语言选择为 中文直接在窗体编辑菜单中对 CAPTION 进行了相应赋值。如果为英文则需执行 下面的语句,此后的每个界面语言确定及实现都是通过采取这个方法 Private Sub Form_Load() If i = 1 Then /判断 i 的值 如果为 1 则进行英文赋值 Label1.Caption = Do you want to continue?Please choose! Command1.Caption = other service Command2.Caption = Cancel End If End Sub 第 11 页 共 26 页 在窗体中我们首先来判断用户输入的卡号和密码是否符合我们的规定。卡 号为 8 位密码为 6 位 Private Sub Command1_Click() /当我们点下确认按钮时 If i = 2 Then If Len(Text1.Text) 8 Or Len(Text2.Text) 6 Then / 比较 卡号是否为 8 位及密码是否为 6 位 Form3.Show Form3.Label1.Caption = 没有正确输入卡号或密码 Text1.Text = Text2.Text = Else Call Checkuser /这里是调用主模块中的身份验证函数,在后面的 窗体实现中都是通过 CALL 语句来直接调用相应函数的 End If End If /以下为用户选择英语的代码,和选择中文时是一 样的,在后面的介绍中将不在引用英语的代码 If i = 1 Then If Len(Text1.Text) 8 Or Len(Text2.Text) 6 Then Form3.Show Form3.Label1.Caption = Please Input Correct Cardnumber Or Password Text1.Text = Text2.Text = Else Call Checkuser End If End If End Sub 在主模块 MODEL1 中身份验证函数代码为 Public Sub Checkuser() 定义 Checkuser 函数 Dim strr As String Set CON = New ADODB.Connection strr = Provider=SQLOLEDB.1;Password= ;Persist Security 第 12 页 共 26 页 Info=True;User ID=sa;Initial Catalog=user;Data Source=XQQATM/ 这段 语句采用了动态连接数据库的方法与数据库 USER 进行连接,采用的是 SQL OLEDB 应用接口。 CON.Open strr u = Form2.Text1.Text 把卡号赋给 u str = select 密码 from 用户信息 where 卡号= if I pursue you I will not catch you, and if I catch you-through your own slowness and clumsiness-I will not kill you, and if I kill you I will not eat you. Nicholas had begun to back away, and at the last; words, realizing that they were a signal, he turned and began to run, splashing through the shallow water. Ignacio ran after him, much helped by his longer legs, his hair flying behind his dark young face, his square teeth-each white as a bone and as big as Nicholass thumbnail-showing like spectators who lined the railings of his lips. Dont run, Nicholas, Dr. Island said with the voice of a wave. It only makes him angry that you run. Nicholas did not answer, but cut to his left, up the beach and among the trunks of the palms, sprinting all the way because he had no way of knowing Ignacio was not right behind him, about to grab him by the neck. When he stopped it was in the thick jungle, among the boles of the hardwoods, where he leaned,.; out of breath, the thumping of his own heart the only . sound in an atmosphere silent and unwaked as Earths long, prehuman day. For a time he listened for any sound Ignacio might make searching for him; there was none. He drew a deep breath then and said, Well, thats over, expecting Dr. Island to answer from somewhere; there was only the green hush. The light was still bright and strong and nearly, shadowless, but some interior sense told him the day, was nearly over, and he noticed that such faint shades as he could see stretched long, horizontal distortions of their objects. He felt no hunger, but he had fasted be- fore and knew on which side of hunger he stood; he was not as strong as he had been only a day past, and by this time next day he would probably be unable to outrun Ignacio. He should, he now realized, have eaten the monkey he had killed; but his stomach revolted at the thought of the raw flesh, and he did not know how he might build a fire, although Ignacio seemed to have done so the night before. Raw fish, even if he were able to catch a fish, would be as bad, or worse, than raw monkey; he remembered his effort to open a coconut-he had failed, but it was surely not impossible. His mind was hazy as to what a coconut might contain, but there had to be an edible core, because they were eaten in books. He decided to make a wide sweep through the jungle that would bring him back to the beach well away from Ignacio; he had several times seen coconuts lying in the sand under the trees. He moved quietly, still a little afraid, trying to think of ways to open the coconut when he found it. He imagined himself standing before a large and raggedly faceted stone, holding the coconut in both hands. He raised it and smashed it down, but when it struck it was no longer a coconut but Mayas head; he heard her nose cartilage break with a distinct, rubbery snap. Her eyes, as blue as the sky above Madhya Pradesh, the sparkling blue sky of the egg, looked up at him, but he could no longer look into them, they retreated from his own, and it came to him quite suddenly that Lucifer, in falling

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论