专升本毕业论文样例.doc_第1页
专升本毕业论文样例.doc_第2页
专升本毕业论文样例.doc_第3页
专升本毕业论文样例.doc_第4页
专升本毕业论文样例.doc_第5页
已阅读5页,还剩60页未读 继续免费阅读

下载本文档

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

文档简介

本科生毕业设计 论文 I 摘 要 本文以毕业设计网上商城为目的 讨论了基于 INTERNET 的网上商城系统的 设计与实现 在系统的设计过程中 采用了 ASP NET 作为应用程序的开发工具 选用了 SQL Server 2000 为数据库平台 整个系统是以 Windows 操作系统为开发 环境 对系统的功能以及流程进行了详细的分析后 采用 Web 项目较为流行的开 发模式是三层体系结构 所谓三层逻辑体系结构是指数据访问层 DAL 业务逻 辑层 BLL 用户表示层 网上商城系统能够及时的将前台信息发送到网络 为消费者提供商品信息 本系统对网上商城中常见的商品的购买 商品的搜索 商品信息的查询 同时 具有用户的登录 注册及修改用户信息等功能 后台的系统管理员要随时更新 网上商城中的商品信息 并对用户信息进行管理以及查看管理员日志等 系统使用据库 它具有灵活的数据库结构 并使用当前网络常用的应用开 发工具 ASP NET 论文主要介绍了本系统的开发背景 所要完成的主要功能和开发的过程 重点的说明系统设计的重点 设计思想等 关键词 SQL Server 2000 数据库 数据库结构 ASP NET 网上商城系统 本科生毕业设计 论文 II Abstract This text with the graduation design on line company s city for purpose discuss according to the design and the realization of the INTERNET the on line company city system Adopted ASP in the design process of the system The NET is the development tool of the applied procedure choosing to use the SQL Server 2000 is the database terrace the whole system takes the Windows operate system as to develop environment After carrying on etailed analysis to the function and process of the system the adoption Web item the more popular development mode is three layer system structures the so called three layer logic system structureses are index numbers to mean a layer according to the interview layer DAL businesslogicyer BLL customer The on line company city system can in time of send out the stage information to the network provide the merchandise information for the consumer This system purchases the familiar merchandise in the net company s city the merchandise search the search of with the merchandise information have the logging of the customer in the meantime register and modify the customer information etc function The system managing person of the backstage wants to be at any time to renew the merchandise information in on line company s city and carry on a management and look into managing person s daily record etc to the customer information The system usage according to database it has vivid database structure Combine an usage current network in common use applied development tool ASP NET The thesis mainly introduced the development background of this system want to complete of the main function and the process of the development The point that the elucidation system of the point design the design thought etc 本科生毕业设计 论文 III KeywordKeyword The SQL Server 2000 Database Database structure ASP NET Net top company s city system 本科生毕业设计 论文 IV 目 录 第 1 章 绪论 1 1 1 课题来源 1 1 2 开发工具的选择 2 1 3 数据库的选择 6 第 2 章 系统需求分析 11 2 1 需求分析 11 2 2 系统流程图 11 2 3 系统流程图 13 2 4 数据字典的创建 14 第 3 章 系统概念结构设计 16 3 1 功能划分 16 3 2 系统 E R 图 17 第 4 章 系统逻辑结构设计 21 4 1 系统逻辑结构设计主要任务 21 4 2 E R 图转换成关系模型 22 4 3 数据模型的优化 23 第 5 章 数据库的物理实现 25 5 1 数据库表的创建 25 5 2 数据库关系图 29 第 6 章 系统应用程序设计 30 6 1 数据库的连接 30 6 2 主界面 31 第七章总结 50 参考文献 51 致 谢 52 附 录 53 本科生毕业设计 论文 V 第 1 章 绪论 1 1 课题来源 Internet 影响着人类的生活 90 年代网络技术不未完全成熟的时候 或许 尚有人可以置身事外 毕竟 网站提供的服务 如果通过一般的方法也可以达 到 想要买股票 只需拨通证券业务员的专线电话就可以了 不一定非要打开 计算机 连上 Internet 才行 再者 对于上网查数据这种事情 其实也不是对 每一个人都那么方便 但是 有一天你突然发现身边的亲朋好友可以很方便地 通过一个小小的盒子就完成银行转帐 轻易地获得股票信息 无聊时看几则笑 话开怀一笑 利用花店服务送花给老婆 等种种子活动时 有时是凭借一个 叫做 PDA 的东西 有时是使用手机 有时是来到冰箱前对着屏幕说了些话 或 是按了几下之后完成 的 试问 有谁能在一股网络旋风之后还说 这些与我无 关 呢 首先简单介绍一下什么是网上商城系统 网上商城系统一般是由专业网络 技术公司开发的网上开店程序 使用者无需任何专业网络 知识 即可建立一个 自己的功能强的的网上商城 对于常见的产品发布 订单处理等操作都有现成 的 WEB 在线管理 开店者登录后台管理即可进行商品维护和订单管理 在 Internet 广泛应用的今天 网上购物已成为人民消费的一种方式 网上 购物为消费者提供了极大的方便 节省了消费者的购物时间 随着我国改革开放的不断深入 经济的飞速发展 企业想要生存 发展 要 想在激烈的市场竞争中立于不败之地 越来越多的商家将自己的商品信息发布到 网络上面 使得更多的消费者能够在了解 熟悉自己的商品的同时选购自己的商 品 本科生毕业设计 论文 2 通过对网上商城的详细调查 搜查了大量的资料 从系统结构的组织 功能 的实现 技术要求以及可行性等多方面进行考虑 认为本课题是一个适应现今市 场要求的计算机信息管理系统 具有一定的实际开发价值和使用价值 1 2 开发工具的选择 在目前市场上众多的网络程序开发工具中 有些强调程序语言的弹性与执行 效率 有些则偏重于可视化程序开发工具所带来的便利性与效率和提高 各有各 的优点和特色 也满足了不同用户的需求 然而 语言的弹性和工具的便利性是 密不可分的 只有便利和工具 却没有弹性和语言作支持 许多特殊化的处理动 作必需要耗费数倍的工夫来处理 使得原来所标榜的效率提高的优点失去了作用 相反 如果只强调程序语言的弹性 却没有分理处的工具作配合 即便函是一些 即使非常简单的界面处理动作 也会严重的浪费程序设计师的宝贵时间 而 ASP NET 是一个非常理想选择 ASP NET 是建立在公共语言运行环境 COMMON LANGUAGE RUNTIME 上的 ASP NET 是 NET 框架应用程序的 招待引擎 可以用在服务器端构造一个强大的 WEB 应用程序的编程框架 这是 微软公司对 ASP NET 的定义 它表明了两点意思 ASP NET 的运行环境是公共 语言运行环境 ASP NET 是 NET 框架的一个组成部分 与以往的 WEB 开发的模式相比 ASP NET 展现了几个重要的优势 执行效率的大幅提高 ASP NET 是把基于通用语言的程序在服务器上运行 不像以前的 ASP 即时解释程序 而是将程序在服务器端首次运行时进行编译 这样的执行效果 当然比一条一条的解释强很多 1 世界级的工具支持 ASP NET 构架是可以用 Microsoft R 公司最新 的产品 Visual S 开发环境进行开发 WYSIWYG What You See Is What You Get 所见即为所得 的编辑 这些仅是 ASP NET 强大化软件支持的一小部分 本科生毕业设计 论文 3 2 强大性和适应性 因为 ASP NET 是基于通用语言的编译运行的程序 所 以它的强大性和适应性 可以使它运行在 Web 应用软件开发者的几乎全部的平 台上 笔者到现在为止只知道它只能用在 Windows 2000 Server 上 通用语言的 基本库 消息机制 数据接口的处理都能无缝的整合到 ASP NET 的 Web 应用中 ASP NET 同时也是 language independent 语言独立化的 所以 你可以选择一种 最适合你的语言来编写你的程序 或者把你的程序用很多种语言来写 现在已经 支持的有 C C 和 Java 的结合体 VB Jscript 将来 这样的多种程序语言 协同工作的能力保护您现在的基于 COM 开发的程序 能够完整的移植向 ASP NET 3 简单性和易学性 ASP NET 是运行一些很平常的任务如表单的提交 客户端的身份验证 分布系统和网站配置变得非常简单 例如 ASP NET 页面构 架允许你建立你自己的用户分界面 使其不同于常见的 VB Like 界面 另外 通 用语言简化开发使把代码结合成软件简单的就像装配电脑 4 高效可管理性 ASP NET 使用一种字符基础的 分级的配置系统 使 你服务器环境和应用程序的设置更加简单 因为配置信息都保存在简单文本中 新的设置有可能都不需要启动本地的管理员工具就可以实现 这种被称为 Zero Local Administration 的哲学观念使 A 的基于应用的开发更加具体 和快捷 一个 ASP NET 的应用程序在一台服务器系统的安装只需要简单的拷贝一些必须 得文件 不需要系统的重新启动 一切就是这么简单 5 多处理器环境的可靠性 ASP NET 已经被刻意设计成为一种可以用 于多处理器的开发工具 它在多处理器的环境下用特殊的无缝连接技术 将很大 的提高运行速度 即使你现在的 ASP NET 应用软件是为一个处理器开发的 将 来多处理器运行时不需要任何改变都能提高他们的效能 但现在的 ASP 确做不 到这一点 6 自定义性和可扩展性 ASP NET 设计时考虑了让网站开发人员可以在自 本科生毕业设计 论文 4 己的代码中自己定义 plug in 的模块 这与原来的包含关系不同 ASP NET 可以 加入自己定义的如何组件 网站程序的开发从来没有这么简单过 7 安全性 基于 Windows 认证技术和每应用程序配置 你可以确性你 的原程序时绝对安全的 但是 Asp 的经验告诉我们 不能这么自信 M 老是会 出 Bug 的 1 2 1 ASP NET 的运行环境 在操作系统方面 ASP NET 只能在带有 IIIS4 0 的 Windows NT 4 0 Server 或更新版本 上运行 但是 Windows 2000 Server 带 IIIS5 0 无疑是最 适合的操作系统平台 在数据库方面 还应该有 SQL Server 7 0 以上的版本 最 好是 SQL Server 2000 或者 Acess 2000 变两者都是微软提供的进行数据库开 发的软件 所不同的是 SQL Server 面向的是企业级的大型数据库开发 而 Acess 则主要面向桌面数据库 由于 ASP 1 0 3 0 都是作为 IIIS 的一个组件由相应的操 作规程 3 服务包 Server Pack 提供 安装了服务包自然也就安装了 ASP 的操 作平台 不需要对 ASP 操作平台进行专门安装 但是 由于现在使用的 Windows 操作系统的最新版本是 Windows 2000 系列 相应的 IIIS5 0 附带的是 ASP 3 0 的版本 所以需要在操作系统上安装 ASP NET 操作平台 即 NET framework SDK 在 net framework 中最大的特色便是面积对象程序设计的概念 此外 net framework 还包括了 复制一粘贴的程序配置方式 自动资源管理 数据类型检 查 跨平台 新的安全模式 JIT 即时编译 在微软发表 net framework 之前 ASP 网页是 asp dll 所提供的对象亩界面 asp dll 提供了 Application Session Request Respose Server 等对象让 ASP 网 页程序进行存取 ASP 网页程序才得以将数据输出到浏览器上 并能读取表单 上的数据和系统数据 如与数据库管理系统 连线 进行数据存取 也可引 本科生毕业设计 论文 5 用 ActiveX 为了浏览在学习 ASP NET 过程中开发的网页 需要在 IIS 上建立一个虚拟 目录 1 选择 开始 程序 管理工具 Internet 服务管理器 将会出现 Internet 信息服务管理 窗口 展开窗口左半部分中的带 号的方框 2 在 号后边的单词是 Internet 服务器的名字 命名为 xiaozhi 用鼠标右击桌面上 我的电脑 出现 Windows 2000 系统特性 窗口 选择 网络标识 选项卡 3 单击 属性 按钮 弹出 标识更改 窗口 4 在 计算机名 下面的文本框内输入要取的名字 单击 确定 按钮 再单击 确定 按钮后 系统提示重新启动计算机 重启动后修改就会生效 5 在修改了计算机网络标识名字后 创建一个虚拟目录 右击 默认 WEB 站点 在弹出的菜单中选择 新建 虚拟目录 交替地出现一个 创建虚 拟目录的向导 窗口 单击 下一步 在 别名 下和文本框中输入虚拟目录 的名字 6 单击 下一步 按钮后 再单击 浏览 选择先前创建的虚拟目录 7 单击 下一步 后 后面的步骤就不需要对系统的默认设置进行修改 按照系统的提示单击 下一步 直到完成虚拟目录的创建 1 2 2 ASP NET 的配置 在 ASP NET 中 可扩展的基结构是 ASP NET 配置系统和一大特色 基础 结构使我们可以在最初部署 ASP NET 应用程序和服务时定义配置设置 之后可 以随时添加或个性这些配置设置 同时对运行着的 Web 应用程序和服务器所产 生的影响也被至最小 本科生毕业设计 论文 6 ASP NET 配置系统具有以下优点 在运行 ASP NET 应用程序时 ASP NET 使用 web config 文件提供的本国信息为每个惟一的 URL 资源设计一组配置设计 然后缓存结果配置设计 以供以后应用程序对资源的请求使用 ASP NET 配置 系统是可扩展的 配置信息存储在基于 XML 的文本中 每一个 ASP NET Web 应用程序服务器上的众多目录中均可以有自己的配置文件 名称都是 Web config ASP NET 能检测管理员对配置文件夹的更改 并自动将新配置设 置应用于受该更改影响的 Web 资源上 ASP NET 通过配置 Internet 信息服务 IIS 来防止对配置文件的直接浏览器访问 以保护配置文件不受外部访问 Web config 文件包含 ASP NET 应用程序的所有配置设置 其理念是让许多 开发人员共同控制 Web 应用程序 而不是由系统管理员一个人来控制 使用 ASP 是不需要也没有地方需要可以配置的 网站设计者对网站 只能 通过程序而不能通过系统配置来实现对网站的有效管理 与 ASP 同的是 ASP NET 通过 XML 格式的文件 Machine Config 和 Web config 来完成对网站和 网站目录的配置 对于 一个网站而言 服务器的配置信息保存在一个名为 Machine Config 的论据中 当建立一个新的 Web 项目的时候 Web config 文件将 会被自动创建 它包含了各种专门针对一个具体应用的一些诸如 Session 的管理 错误捕捉等的特殊配置 因此 对于 ASP NET 而言 针对一个具体的 ASP NET 应用或者一个具体的网站目录 是有两部分设置可以配置的 一是 Machine Config 配置 另外一个是 Web config 配置 1 3 数据库的选择 Microsoft SQL Server 2000 中文版是基于客户端 服务器模式的新一代大 型关系型数据库管理系统 它在电子商务 管理系统和数据库解决方案等应用中 起着重要的核心作用 可为企业的数据管理提供强大的支持 对数据库中的数据 有效的管理 并采用有效的措施实现数据的完整性和数据的安全性 本科生毕业设计 论文 7 用户对数据库的使用 是通过数据库管理系统提供的语言来实现的 不同的 数据库管理系统提供了不同的数据库语言 关系数据库管理系统几乎都是提供关 系数据库标准语言 SQL SQL 的全称是 Structured Query Language 即结构化查询语言 SQL 语言 是一种非过程化语言 它一次处理一个记录集合 对数据提供自动导航 SQL 语 言允许用户在高层的数据结构上工作 而不对单个记录进行操作 SQL 语言不要 求用户指定数据的存取方法 而是使用查询优化器 由系统决定对指定数据存取 的最快速手段 当设计者在关系表上定义了索引时 系统会自动利用索引进行快 速检索 用户不需知道表上是否有索引或者有什么类型的索引等细节 SQL 语言可以完成许多功能 例如 查询数据 在数据库表格中插入 修改和删除记录 建立 修改和删除数据对象 控制对数据和数据对象的存取 确保数据库的一致性和完整性等 存储过程 1 3 1 存储过程 在大型数据库系统中 存储过程和触发器具有很重要的作用 无论是存储 过程还是触器 都有是 SQL 语句和流程控制语句的集合 就本质而言 触器也 是一种存储过程 存储过程在运算时生成招待方式 所以 以后对其再运行时 其执行速度很 SQL Server 2000 不仅提供了用户 自定义存储过程和功能 而 且也提供了许多可作为工具使用的系统存储过程 本科生毕业设计 论文 8 在使用 Microsoft SQL Server 2000 创建应用程序时 Transact SQL 编程语言是应用程序和 SQL Server 数据库之间的主要编程接口 使用 Transact SQL 程序时 可用两种方法存储和执行程序 可以在本地存储程序 并创建向 SQL Server 发送命令并处理结果的应用程序 也可以将程序在 SQL Server 中存储为存储过程 并创建执行存储过程并处理结果的应用程序 SQL Server 中的存储过程与其它编程语言中的过程类似 原因是存储过程 可以 接受输入参数并以输出参数的形式将多个值返回至调用过程或批处理 包含执行数据库操作 包括调用其它过程 的编程语句 向调用过程或批处理返回状态值 以表明成功或失败 以及失败原因 可使用 Transact SQL EXECUTE 语句运行存储过程 存储过程与函数不同 因为存储过程不返回取代其名称的值 也不能直接用在表达式中 存储过程的优势 使用 SQL Server 中的存储过程而不使用存储在客户计算机本地的 Transact SQL 程序的优势有 允许模块化程序设计 只需创建过程一次并将其存储在数据库中 以后即可在程序中调用该过程 任意次 存储过程可由在数据库编程方面有专长的人员创建 并可独立于程序 源代码而单独修改 允许更快执行 本科生毕业设计 论文 9 如果某操作需要大量 Transact SQL 代码或需重复执行 存储过程将比 Transact SQL 批代码的执行要快 将在创建存储过程时对其进行分析和优化 并可在首次执行该过程后使用该过程的内存中版本 每次运行 Transact SQL 语句时 都要从客户端重复发送 并且在 SQL Server 每次执行这些语句时 都要对其进行编译和优化 减少网络流量 一个需要数百行 Transact SQL 代码的操作由一条执行过程代码的单独语 句就可实现 而不需要在网络中发送数百行代码 可作为安全机制使用 即使对于没有直接执行存储过程中语句的权限的用户 也可授予他们执行 该存储过程的权限 SQL Server 存储过程是用 Transact SQL 语句 CREATE PROCEDURE 创建的 并可用 ALTER PROCEDURE 语句进行修改 存储过程定义包含两个主要组成部分 过程名称及其参数的说明 以及过程的主体 其中包含执行过程操作的 Transact SQL 语句 SQL 语句与存储过程的区别 存储过程的优点 存储过程只在创造时进行编译 以后每次执行存储过程都不需再重新编译 而一般 SQL 语句每执行一次就编译一次 所以使用存储过程可提高数据库执行速 度 本科生毕业设计 论文 10 1 当对数据库进行复杂操作时 如对多个表进行 Update Insert Query Delete 时 可将此复杂操作用存储过程封装起来与数据库提供的事务处理结合一起使 用 存储过程可以重复使用 可减少数据库开发人员的工作量 2 安全性高 可设定只有某此用户才具有对指定存储过程的使用权 存储过程的种类 存储过程可以分为以三种 1 系统存储过程 系统过程主要存储在 master 数据库中并以 sp 为前缀 并且系统存储过程主要是从系统表中获取信息 从而为系统管理员管理 SQL Server 提供支持 通过系统存储过程 MS SQL Server 中的许多管理性或信息性 的活动都可以被顺利有效的完成 尽管这些系统存储过程被放在 master 数据库 中 但是仍可以在其它数据库中对其进行调用 在调用时不必在存储过程名前加 上数据库名 而且当创建一个拳数据库时 一些系统存储过程会在新数据库中被 自动创建 如 sp help 就是取得指定对象的相关信息 2 扩展存储过程 以 XP 开头 用来调用操作系统提供的功能 exec master xp cmdshell ping 10 8 16 1 3 用户自定义存储过程是由用户创建并能完成某一特定功能的存储过程 常用格式 Create procedure procedue name parameter data type output with recompile encryption as 本科生毕业设计 论文 11 sql statement 通常情况下 有一系列操作是经常要执行的 比如复杂的带参当选的查询 或者是重 复性和对数据库和更新操作 可以考虑将它们放在一个想念过程中 这样每当执行操作时 吸需调用存储过程即可 因为存储过程是经过预编译的 所以执行起来速度更快 同样 当 需要修改某个语句时 只要修改存储过程 程序其他地方不需要改动 本科生毕业设计 论文 12 第 2 章 系统需求分析 软件系统的总体设计大约在经历可行性分析和项目开发设计 需求分析 概 念结构设计 逻辑结构设计 数据库物理实现 编码 测试以及维护等几个阶段 可行性分析和项目开发计划在前面已经叙述 下面所在做的是进行软件需求分析 2 1 需求分析 需求分析是通过详细调查现实世界要处理的对象 充分了解原系统 手工系 统或计算机系统 工作概况 明确用户的各种需求 然后在此基础上确定系统的 功能 系统必须充分考虑今后可能的扩充和改变 不能仅仅按当前应用需求来设 计数据库 在传统的商城中 所有的销售过程都在有销售人员 收银员等参与其中 消 费者还要在商城消耗大量的时间挑选商品 在商品不足时 商家不能及时的补充 商品 使得消费者不能如愿的选择自己喜欢的商品 为了提高企业的经济效益 提高时间的利用率 网上商城应机而生 网上商城应满足以下的几点需求 消费者主要要求对网上商品信息的查询 购买 对自己购物车的查询 查看 修改 对自己资料的查看与修改以及查看自 己的账户等 网上商城的管理者主要要求可以对消费者的信息进行查看 对网上 更新网商品信息 查看消费者的账户 查看管理员日志等 2 2 系统流程图 对系统的功能以及流程进行了详细的分析后 面临的问题将是如何去开发 这个项目 项目开发的设计宗旨是 针对项目目的需求建出可重作性高 扩展 性好的代码工程 目前 Web 项目较为流行的开发模式是三层体系结构 eshop 本科生毕业设计 论文 13 的开发同样采用三层结构 所谓三层逻辑体系结构是指数据访问层 DAL 业务逻辑层 BLL 用户表 示层 DAL 涉及致到数据库本身 存储过程以及提供数据库接口的组件 BLL 指的是封装了应用程序商务逻辑的组件 而表示层指的是 Web 应用程序页 如下图 有的情况下 为民降低应用程序的复杂度 往往将 DAL 和 BLL 合并为一个 层 即养活了数据访问组件 而直接在 BLL 中访问数据库 在 eshop 整个解决方案的实现中 把前台和后台分开作为两个不同的项目工 程 拥有各自的命名空间 这样做主要是安全性方面的考虑 因为从逻辑上来讲 后台和前台的功能基本是独立的 由各自的项目安全机制来控制会使得开发更加 简便 Eshop 共分为两大功能模块 前台和后台管理员 两大模块又分别包含各自 和众多子模块 前台包括商品信息 用户信息管理模块 购物车模块 订单模 块 后台包括管理员信息管理 商品信息管理 用户信息管理 销售管理等模 块 整体模块组织图 如下 ASP NE T Web Form 业务逻辑层 BLL 数据访问 层 DAL SQL Server 2000 本科生毕业设计 论文 14 2 3 系统流程图 优秀的电子商务系统应该具备完备的功能模块 高度的安全性 良好的伸缩 扩展性 此外 便于维护也是不可缺少的特点 这样的目标固然是基于数据库的 修正还远远不够 软件工程领域的经验告诉我们 良好的系统设计会使功能的代 码实现变得异常简单 对于电子商务系统来说 整个电子购物的流程是至关重要的 在 eshop 的流 程设计中就贯彻了这样的思想 如下图 电子购物商城 前台后台 用户信 息管理 商品 信息 购物 车 订 单 管理员 信息 商品信 息管理 用户信 息管理 销售 管理 本科生毕业设计 论文 15 2 4 数据字典的创建 数据流程图表达了数据和处理的关系 数据字典则是系统中各类数据描述的 集合 是进行详细的数据的收集和数据分析秘获得的主要成果 数据字典在数据 库设计中占有很重要的地位 数据字典如下 用户信息 主要介绍用户的信息 其中包括用户 id 整型 不允为空 用户 浏览查看商品详 细信息 添加到购物 车 结 帐 登录 注册 新用户 是否注册 新用户 是否 登录 Y Y E N N 账户金额 购物总 额 生成订单 提 示用户 购买成功 出错了 请联系 管理员添加账户存款 Y 本科生毕业设计 论文 16 登录名 字符型 长度 50 不允为空 用户密码 字符型 长度 50 不允为空 密码提示问题 字符型 长度 50 不允为空 密码提示问题答案 字符型 长度 50 不允为空 账户金额 数值型 用户真实姓名 字符型 长度 50 不允为空 性别 字符型 长度 10 地址 字符型 长度 50 不允为空 电子邮件 长度 50 不允为空 邮编 字符型 长度 10 不允为空 商品信息表 主要介绍商品的基本信息 其中包括商品编号 整型 不允为 空 商品名称 字符型 长度 50 不允为空 价格 数值型 不允为空 商品介 绍 字符型 长度 50 不允为空 所属分类编号 整型 不允为空 点击数 整 型 商品分类表 主要介绍商品分类信息 其中包括商品分类 id 整型 不允为 空 分类名称 字符型 长度 50 购物车表 其中包括记录 id 整型 不允为空 购物车 id 字符型 长度 50 不允为空 所购商品编号 整型 购物时间 日期时间型 购物数量 整型 订单表 订单号 整型 不允为空 所属用户 id 整型 不允为空 成交时 间 日期时间型 订单详细信息表 其中包括所属订单号 整型 不允为空 商品 id 整型 不允为空 该商品的购买数量 整型 不允为空 该商品的单价 数值型 不允 为空 管理员信息表 其中包括管理员 id 整型 不允为空 管理员登录名 字符 型 长度 50 不允为空 管理员密码 字符型 长度 50 不允为空 管理员角 色 id 字符型 长度 50 管理员角色表 其中包括角色 id 整型 不允为空 角色名称 字符型 长 度 50 不允为空 管理员日志 其中包括日志 id 整型 不允为空 角色名称 字符型 长度 本科生毕业设计 论文 17 50 不允为空 日志时间 日期时间型 所属管理员编号 整型 不允为空 本科生毕业设计 论文 18 第 3 章 系统概念结构设计 3 1 功能划分 将需求分析得到的作废需求抽象为信息结构即概念模型的过程就是概念结构 设计 它是整个数据库设计的关键 要系统需求分析阶段 搞清楚了系统 做什么 的问题 形成了目标系统的 逻辑模型 现在我们所要佬的就是说要把系统 做什么 的逻辑模型变换为 怎 么做 的物理模型 即着手实现系统的需求 首先 我们需要描述的是系统的总 的体系结构 3 1 1 系统结构设计 系统的概念设计中最重要的就是系统的模块化 模块化是指解决一个复杂问 题时自上项下逐层把系统划分成若干个模块的过程 每个模块完成一个特定的功 能 所有的模块按某种方法组织起来 成为一个整体 完成整个系统所要求的功 能 将系统划分为两个模块是为了降低系统和复杂性 提高可读性 可维护性 但模块的划分不能是任意的 应尽量保持其独立性 也就是说 每个模块只完成 系统要求的独立的子功能 并且与其他模块的联系最少且接口简单 即尽量做到 提高模块的独立 为设计高质量的系统结构奠定基础 根据需求分析 网上商城系统的模块组织结构如下 本科生毕业设计 论文 19 3 2 系统 E R 图 目前 广泛使用的数据模块可分为两种类型 一种是独立于计算机系统的 概念数据模块 如 实体联系模型 另一种是直接面向数据库逻辑结构的 结构数据模型 要本系统中我采用的是 实体联系模型 E R 模型 来描述 数据库的结构 以对现实世界进行第一次抽象 E R 模型直接从现实世界抽象出 浏览商品查看商品详 细信息 添加到购物 车 结帐 登录 注册新用 户 是否注册 新用户 是否 登录 Y Y E N N 账户金额 购物总 额 生成订单 提示 用户 购买成功 出错了 请联系管理 员添加账户存款 Y 本科生毕业设计 论文 20 实体类型及实体间联系 然后用 E R 图来表示数据模型 它有两个明显的优点 接近于人的思维 容易理解 与计算机无关 用户容易接受 但 E R 模型只能说 明实体间的联系 不能进一步说明详细的数据结构 它只是数据库设计的第一步 E R 的四个基本成分 矩形框 表示实体类型 考虑问题对象 菱形框 表示联系类型 实体间的联系 椭圆形框 表示实体类型和联系类型的属性 对于关键码的属性 在属 性名下划一横线 直线 表示联系类型与其涉及的实体类型之间以直线连接 用户信息 用户登录 名 用户密码账户金额 用户真实姓名性别 地址 邮编 电子信箱 本科生毕业设计 论文 21 商品信息 商品编号商品名称 价格 所属分类编 号 点击数 商品介绍 购物车 购物编 号 所购商 品编号 购物数量购物时 间 管理员信息 管理员编 号 管理员 登录名 管理员密码 码 管理员角 色 本科生毕业设计 论文 22 总体 E R 图如下 M 1 M M m m 前台用户 登录 商品 显示 购买 1m 后台 管理 员 管理员 本科生毕业设计 论文 23 本科生毕业设计 论文 24 第 4 章 系统逻辑结构设计 4 1 系统逻辑结构设计主要任务 逻辑结构设计的主要任务就是把概念结构设计阶段设计好的基本 E R 图转换 为与先用 DBMS 产品所支持的数据模型相符合的逻辑结构 在设计逻辑结构时应该选择最适于相应概念结构的数据模型 然后对支持这 种数据模型的各种 DBMS 进行比较 从中选出最合适的 DBMS 目前 广泛作用的数据模型可分为两种类型 一种是独立于计算机系统的模型 完全不涉及信息在系统中的表示 只是 用来描述某个特定组织所关心的信息结构 这类模型称为 概念数据模型 另一种数据模型是直接面向数据库的逻辑结构 它是现实世界的第二层抽象 这类模型涉及到计算机系统和数据库管理系统 女称为 结构数据模型 例如 层次 网状 关系 面向对象等模型 这类模型有严格的形式化定义 以便于在 计算机系统中实现 针对本系统的开发特点 本系统采用的是关系模型 关系模型的主要是用二维表格表达实体集 用外键表示实体间联系 表格简 单用户易懂 编程时并不涉及存储结构 访问技术等细节 关系模型是数学化模 型 SQL 语言是关系数据库的标准化语言 已得到了广泛的应用 80 年代初形成 产品 但很快得到广泛的应用和普及 并最终取代了层次 网状数据库产品 现 在市场上典型的关系 DBMS 产品有 DB2 ORACLE SYBASE INFORMIX 和微机型产 品 FORPRO ACCESS 等 关系模型和网状 层次模型的最在区别是 关系模型用表格数据而不是通过 指针链来表示和实现实体间联系 关系模型的数据结构简单 易懂 只需用简单 的查询语句就可对数据库进行操作 本科生毕业设计 论文 25 关系模型是数学化的模型 可把表格看成一个集合 因此集合论 数理逻辑 等知识可引入到关系模型中来 关系模型已是一个成熟的有前途的模型 已得到 广泛的应用 4 2 E R 图转换成关系模型 将 E R 图转换面关系模型一般应遵循如下原则 1 一个实体型转换为一个关系模式 实体的属性就是关系的属性 实体的 码就是关系的码 2 一个 1 1 联系可以转换为一个独立的关系模式 也可以与任意一端对应 的关系模式合并 如果转换为一个独立的关系模型 则与该联系相连的实体的码 以及联系本身的属性均转换为关系的属性 每个实体的码均是该关系的候选码 如果与某一端实体对应的关系模型合并 则需要在该关系模式的属性中加入另一 个关系模式的码和联系本身的属性 3 一个 1 n 联系可以转换为一个独立的关系模式 也可以与 n 端对应的关 系模式合并 如果转换为一个独立的关系模型 则与该联系相连的各实体的码以 及联系本身的属性均转换为关系的属性 而关系的码为 n 端实体的码 4 一个 m n 联系转换为一个关系模式 与该联系相连的各实体的码联席会 及联系本身的属性能 而关系的码为各实体码的组合 5 三个或三个以上实体间的一个多元化联系可以转换为一个关系模式 该 联系相连的各实体的码以及联系本身的属性均转换为关系的属性 而关系的码为 各实体码的组合 6 具有相同码的关系模式可合并 通过转换 本系统的关系模型如下 关系码用 表示 用户基本信息表 用户 id 用户登录名 用户密码 密码提示问题 密码 提示问题答案 账户金额 用户真实姓名 性别 地址 电子邮件 邮编 本科生毕业设计 论文 26 商品信息表 商品编号 商品名称 价格 商品介绍 所属分类编号 点 击数 商品分类表 商品分类 id 分类名称 购物车表 记录 id 购物车 id 所购商品编号 购物时间 购物数量 订单表 订单号 所属用户 id 成交时间 订单详细信息表 所属订单号 商品 id 该商品的购买数量 该商品的单 价 管理员信息表 管理员 id 管理员登录名 管理员密码 管理员角色 id 管理员角色表 角色 id 角色名称 管理员日志 日志 id 角色名称 日志时间 所属管理员编号 4 3 数据模型的优化 建立起一个良好的数据指标体系 是建立数据结构和数据库的最重要的一环 一个良好的数据指标体系是建立 DBMS 的必要条件 但不是充分条件 我们完全 可以认为所建指标体系中的一个指标类就是关系数据库中的一个基本表 而这个 指标类下面的一个个具体指标就是这个基本表中的一个字段 但如果直接按照这 种方式建库显然还不能算最佳 对于指标体系中数据的结构在建库前还必须进行 规范代的重新组织 在数据的规范化表达中 一般将一组相互的数据称为一个关系 relation 而在这个关系下的每个指标项则被称为数据元素 data element 这种关系落 实到具体数据库上就是基本表 而数据元素就是基本表中的一个字段 field 规范化达还规定在每一个基本表中必须定义一个数据元素为关键字 key 它可 以唯一地标识出该表中其它相关的数据元素 在对表的形式进行了规范代定义后 数据结构还有五种规范化定义 定名为 规范化模式 称为范式 在这五种范式中 一般只用前三种 对于常用系统就足 本科生毕业设计 论文 27 够了 而且这五种范式是 向上兼容 的 即满足第五范式的数据结构自动满足 一 二 三 四范式 满足第四范式的数据结构自动满足第一 二 三范式 依此类推 第一范式 first normal form 简称 1st NF 就是指在同一表中没有重复 项出现 如果有则应将重复去掉 这个去掉重复项的过程就称之为规范化处理 在本系统所讨论的开发方法里 1st NF 实际上是没有什么意义的 因为我们按规 范建立的指标体系和表的过程都自动保证了所有表都有满足 1st NF 第二范式 second normal form 简称 2nd NF 是指每个表必须有一个 而 且仅一个 数据元素为主关键字 primary key 其他数据元素与主关键字一一 对应 通常我们称这种关系为函数依赖 functional depEndence 关系 即表 中其它数据元素都依赖于主关键字 或称该数据元素唯一地被主关键字所标识 第三范式 third normal form 简称 3rd NF 就是指表中的所有数据元素 不但要能够唯一地被主关键字所标识 而且它们之间还必须相互独立 不存在其 它的函数关系 也就是说骊于一个满足了 2nd NF 的数据结构来说 表中有可能 存在基本些数据元素依赖于其它非关键字数据元素的现象 必须加以消除 为防止数据库出现更新异常 插入异常 删除异常 数据冗余太大等现象 关系型数据库要尽量按关系规范化要求进行数据库设计 经过比较 本系统满足 3NF 的要求 本科生毕业设计 论文 28 第 5 章 数据库的物理实现 主要设计思想 尽管在需求分析中 商品类别仅仅是商品的一个属性 但数据库设计 中一般将其分离出去创建单独的表 事实上 这是一种面向对象的思想 这 种做法有利于系统和扩展 例如商城的管理者将要拓宽业务 推出某种新类 型的商品时 这样的设计将另其变得异常容易 同样的思想也体现在 Admin 表和 AdminRole 表的设计中 由于订单可能包括多种商品 而且数量不一 所以用两个表来共同体 现订单这个实体 在 Orders 表中存放订单的基本信息 订单号 所属用户 和编号以及下订单的时间 而在 OrderItems 表中则存放订单的具体信息 每条记录体现某个订单所包括的某种商品的购买信息 5 1 数据库表的创建 通过数据库的需求分析 下面设计具体的逻辑结构 本系统共涉及到 9 个表 分别是 用户信息表 UserInfo 商品信息表 ProductInfo 商品类别字典表 Category 购物车表 ShoppingCart 订单表 Orders 订单信息表 OrderItems 管理员信息表 Admin 管理员角色字典表 AdminRole 和管理员日志表 AdminAction 用户基本信息表 userinfo 用户信息表用来记录用户的一些基本信息 编号字段名称数据类型 说明 1useridInt 用户 id 主键 本科生毕业设计 论文 29 2UsernameChar 50 用户登录名 3UserpwdChar 50 用户密码 4QuestionChar 50 密码提示问题 5AnswerChar 50 密码提示问题答 案 6Accountdecimal 账户金额 7UserrealnameChar 50 用户真实姓名 8SexChar 50 性别 9AddressChar 50 地址 10EmailChar 50 电子邮件 11zipcodeChar 10 邮编 在设计用户信息表时 尽管可以用惟一的 Username 字段不作为表的主键 但是般的作法是添加 userid 字段来做主键 并将其设为标识 这样由数据库系 统来控制主键可以排除一些外界的干扰 商品信息表 productinfo 商品信息表表示商品的基本信息 编号字段名称数据类型 说明 1Productidint 商品编号 主 键 2ProductnameChar 50 商品名称 3ProductpriceDecimal 价格 4IntroChar 50 商品介绍 5CategoryidInt 所属分类编号 6clickcountInt 点击数 本科生毕业设计 论文 30 商品分类表 category 商品分类用来表示商品类别信息 编号字段名称数据类型 说明 1CategoryidInt 商品分类 id 主键 2CategorynameChar 50 分类名称 购物车表 shoppongcart 编号字段名称数据类型 说明 1recordidInt 记录 id 主键 2CartidChar 50 购物车 id 3ProductidInt 所购商品编号 4Createdate

温馨提示

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

评论

0/150

提交评论