《仓库管理系统课程设计报告.doc.pdf》由会员分享,可在线阅读,更多相关《仓库管理系统课程设计报告.doc.pdf(40页珍藏版)》请在淘文阁 - 分享文档赚钱的网站上搜索。
1、K2MG-E专业技术人员绩效管理与业务能力提升练习与答案 1 课程设计(论文)课程名称 数据库课程设计 题目名称_ 仓库管理系统_ 学生学院 计算机学院 专业班级 05 级网络工程 3 班 学 号_ 3105007546_ 学生姓名_麦文钜_ 指导教师 何晓桃 2009 年 1 月 广东工业大学课程设计任务书 K2MG-E专业技术人员绩效管理与业务能力提升练习与答案 2 题目名称 仓库管理系统 学生学院 计算机学院 专业班级 网络开发 0503 班 姓 名 麦文钜 学 号 3105007546 一、课程设计的内容 1、学习与实践数据库应用程序开发流程;2、学习使用某一种数据库服务,学会数据库应
2、用程序编程,安装配置系统开发环境;3、设计和实现仓库管理系统;4、撰写课程设计报告。二、课程设计的要求与数据 系统应该实现以下功能:(1)进、出库管理。对进、出库信息进行记录。(2)查询功能。仓库管理对查询要求高,通过主菜单记录当前操作用户的用户编号,保 证了对进、出库信息录入负责人的确认。(3)部门资料管理与库存报表生成。资料管理包括了人员信息管理,财政支出信息管理,以 及 各 项业务单据的资料管理。报表主要分类为:日报表,月报表,销售报表,入 库报表等等。(4)由于计算机能存贮大量的数据,而且数据只要一次存入,便可多次重复使用,所以 管 理 数 据达到完整,统一,原始记录能保证及时,准确。
3、(5)许多重复性的工作,都可由计算机去执行,从而使管理人员从事务性工作解脱出来,真正变为从事一些信息的分析,判断,决策等创造性的工作。数据自己自行编造测试。论文要求结构严谨、格式规范,内容正确、文字通顺。三、课程设计应完成的工作 该系统主要分为三大功能:管理员功能、信息安全功能、一般用户功能、报表生成。(1)管理员功能:产品入库登记、确认入库信息、删除库内信息、借出信息登记、产品 分类管理、添加人员、删除人员、查询库内信息。K2MG-E专业技术人员绩效管理与业务能力提升练习与答案 3(2)信息安全功能:人员权限区分、事件记录、数据警告、数据备份、数据恢复;(3)一般用户功能:查询库内信息、查询
4、出库信息、查询入库信息、修改本用户密码;(4)报表生成:库存信息报表生成。四、课程设计进程安排 序号 设计(论文)各阶段名称 地点 起止日期 1 选定本次课程设计及报告的研究课题 宿舍 2008.12.28 2 对研究课题进行调查并做出详细的需求分析 宿舍 2008.12.29 3 收集资料和参考文献 图书馆 2008.12.29 4 认真阅读和学习资料、文献并做出初步构思 宿舍 2008.12.30-2008.12.31 5 制定出整个系统的设计构想、设计思路和方法 宿舍 2008.12.31-2009.1.1 6 进行系统的设计、开发和编写程序代码 宿舍 2009.1.1-2009.1.3
5、 7 对系统进行测试和系统调试 宿舍 2009.1.4 8 完成整个系统的开发并进行系统维护 宿舍 2009.1.4 9 撰写课程设计报告 宿舍 2009.1.4-2009.1.5 10 最终完成系统修改、论文撰写和表格填写 宿舍 2009.1.5 11 上交课程设计报告、系统答辩 教学楼 2009.1.7-2009.1.9 五、应收集的资料及主要参考文献 1 MySQL 5.1 参考手册http:/ 2 D http:/ 数据库系统概论(第四版)王珊 萨师煊 高等教育出版社 2006.5 4 软件工程(第二版)李代平等编著 清华大学出版社 2008.1 K2MG-E专业技术人员绩效管理与业务
6、能力提升练习与答案 4 5 MySQL 开发者 SQL 权威指南(荷)Rick F.van der Lans 著 许杰星 李强等译 机械工业出版社 2008.1 6 学习 MySQL(影印版)Seyed M.M.Saied Tabagbogbi&Hugb E.Williams 著 南京:东南大学出版社 2007.6 7 C+Builder 程序员成长攻略 蒙祖强 龚涛等编著 北京:中国水利水电出版社 2007.1 发出任务书日期:2008 年 12 月 29 日 指导教师签名:何晓桃 计划完成日期:2009 年 1 月 5 日 基层教学单位责任人签章:主管院长签章:目录 一、相关技术介绍.6
7、1.1 MySQL.6 1.2 BorlandC+Builder 集成开发环境.7 1.3 MyDAC 组件库.8 二、需求分析.8 2.1 功能需求及用户需求.8 2.1.1 功能需求.8 2.1.2 用户需求.9 2.2 系统流图.9 2.3 数据描述.10 2.3.1 数据字典.10 2.3.1.1 基本数据项及数据结构.10 2.3.1.2 数据流条目.10 2.3.1.3 数据存储条目.10 2.3.1.4 加工条目.11 K2MG-E专业技术人员绩效管理与业务能力提升练习与答案 5 2.3.2 数据流图.12 2.4 安全性和完整性要求.12 2.4.1 安全性要求.12 2.4.
8、2 完整性要求.12 三、概念结构设计.13 四、逻辑结构设计.13 4.1 关系模型设计.13 4.2 用户子模式设计.18 4.3 系统结构图.22 4.4 安全性和完整性设计.22 4.4.1 安全性设计.22 4.4.2 完整性设计.22 五、数据库物理设计.23 5.1 建立索引.23 5.2 确定数据的存放位置.24 5.3 确定系统配置.24 5.4 模块设计.25 六、数据库实施.25 6.1 创建数据库及数据库对象 SQL 脚本.25 6.2 数据库备份和恢复方案.34 6.2.1 静态备份.34 6.2.2 动态备份.34 6.2.3 恢复备份.35 6.3 界面设计.35
9、 6.4 关键代码.36 七、系统测试方案.36 7.1 登录测试.36 7.2 新建用户测试.36 7.3 更改用户测试.37 7.4 删除用户测试.37 7.5 数据录入测试.37 7.6 查询测试.38 八、系统主要功能和使用说明.38 九、系统安装说明.38 十、心得体会.39 参考文献.40 K2MG-E专业技术人员绩效管理与业务能力提升练习与答案 6 一、相关技术介绍 1.1 MySQL MySQL 是最受欢迎的开源 SQL 数据库管理系统,它由 MySQL AB 开发、发布和支持。MySQL 是一个快速的、多线程、多用户和健壮的 SQL 数据库服务器。MySQL 服务器支持关键任
10、务、重负载生产系统的使用,也可以将它嵌入到一个大配置(mass-deployed)的软件中去。MySQL 的特性:1)使用 C 和 C+编写,用众多不同的编译器进行了测试,能够工作在众多不同的平台上。2)使用 GNU Automake、Autoconf 和 Libtool 进行移植。3)提供了用于 C、C+、Eiffel、Java、Perl、PHP、Python、Ruby 和 Tcl 的 API。4)采用核心线程的完全多线程 如果有多个 CPU,它能方便地使用这些 CPU。5)提供了事务性和非事务性存储引擎。K2MG-E专业技术人员绩效管理与业务能力提升练习与答案 7 6)使用了极快的“B 树
11、”磁盘表(MyISAM)和索引压缩。7)添加另一个存储引擎相对简单。如果打算为内部数据库添加一个 SQL 接口,该特性十分有用。8)极快的基于线程的内存分配系统。9)通过使用优化的“单扫描多连接”,能实现极快的连接。10)存储器中的哈希表用作临时表。11)SQL 函数是使用高度优化的类库实现的,运行很快。通常,在完成查询初始化后,不存在存储器分配。12)采用 Purify(商业内存溢出检测器)以及 GPL 工具 Valgrind 测试了 MySQL 代码。13)服务器可作为单独程序运行在客户端/服务器联网环境下。它也可作为库提供,可嵌入(链接)到独立的应用程序中。这类应用程序可单独使用,也能在
12、网络环境下使用。简言之,MYSQL 具有功能强,使用简单,管理方便,运行速度快,可靠性高,安全保密等特点。1.2 BorlandC+Builder 集成开发环境 Borland C+Builder(以下简称 BCB)是 Borland 公司(现更名为 Inprise)继 Delphi 之后推出的又一个优秀的可视化编程环境,它在32位 Windows 环境下为我们提供了一种极具吸引力的快速 Windows 应用程序开发系统(RAD)。它基于最流行的面向对象程序设计语言 C+,采用领先的数据库技术,并结合使用了图形用户界面(GUI)的许多先进特性和设计思想。VCL 是可视化组件库的简称,它是一个面
13、向对象的函数库,完全支持所有面向对象编程的标准概念如继承、多态和封装等。C+Builder 的集成开发环境提供了120多个 VCL 组件,使开发人员不需太多编码,就能够实现很多复杂的功能,体现了软件的“重用性”原则。C+Builder 的用户界面也非常友好,易于使用,并且采用了停驻式(docking)工具条,可以自由组合集成开发环境窗口和工具条的排放方式。在编码过程中,还可以使用CodeExplorer 技术对源代码进行管理。CodeCompletion 技术使编译器能够自动列出 VCL 组件的可用属性和方法供程序员选择,而不必手工输入冗长的代码。C+Builder 含有20多个数据感知控件。
14、在许多情况下,甚至不须要编写任何程序代码,便可以开发一个复杂的应用程序。C+Builder 还提供了强大的 Borland 数据库引擎,这是一种非常成熟的数据库连接技术,它提供了3种访问数据库的方式:一是可以直接存取 dBase、FoxPro、Paradox 等文件型数据库生成的 DB、DBF 文件;二是提供了标准的 ODBC 接口;三是提供了高效的 SQL Links 数据库驱动程序,允许直接存取 Oracle、Informix、SyBase、MSSQLServer、DB2和 InterBase。此外,C+Builder 还提供了一组 ADO 控件,使 C+Builder 编程人员不用依靠
15、BDE 来创建应用程序,可直接使用 ADO 存取数据。K2MG-E专业技术人员绩效管理与业务能力提升练习与答案 8 C+Builder 率先引入了多层数据库应用模型,通过 C+Builder 提供的多层分布式应用服务(MIDAS)可以轻松开发出高可靠性、高效率、高负载的分布式数据处理系统。此外,还可以通过 ActiveForm 或 InterBaseExpress为多层数据库应用程序创建基于 Web 的客户端,这样用户通过普通的浏览器就可以与远程数据库系统进行交互。在 C+cBuilder 6中,MIDAS 更名为 DataSnap、DataSnap 强化了 MIDAS 原有的功能,并改善了
16、MIDAS 的执行效率,更方便使用。1.3 MyDAC 组件库 MyDAC,全称为 MySQL Data Access Components(MySQL 数据访问组件),支持 Borland Delphi,C+Builder 和 Kylix。它提供访问 MySQL 数据库的一种方式,可以代替标准的 Borland Database Engine(BDE)或 dbExpress。MyDAC能够通过MySQL client或MySQL network protocol工作。假如直接使用MySQL protocol协议MyDAC不需要 client library,仅需要 TCP/IP protoc
17、ol。这个特征允许编译真正的瘦客户数据库应用。在基于 MySQL 的client/server 应用中使用 BDE 或 dbExpress 有些不足,许多情况下 BDE 和 dbExpress 不能够使用服务器的特殊特征,还有 BDE 必须容忍过多的资源使用,限制一个应用程序的分发和管理。使用 BDE:MySQL ODBC BDE Application 通过 MySQL 接口:MySQL Client library Application 使用 MySQL 网络协议:MySQL Application 二、需求分析 2.1 功能需求及用户需求 2.1.1 功能需求 K2MG-E专业技术人员
18、绩效管理与业务能力提升练习与答案 9 该系统主要分为三大功能:管理员功能、信息安全功能、一般用户功能、报表生成。(1)管理员功能:产品入库登记、确认入库信息、删除库内信息、借出信息登记、产品 分类管理、添加人员、删除人员、查询库内信息。(2)信息安全功能:人员权限区分、事件记录、数据警告、计划备份、即时 备份、数据恢复;(3)一般用户功能:查询库内信息、查询出库信息、查询入库信息、修改本用户密码;(4)报表生成:库存信息报表生成。2.1.2 用户需求 根据用户需求,该系统应该实现以下功能:(1)进、出库管理。对进、出库信息进行记录。(2)查询功能。仓库管理对查询要求高,通过主菜单记录当前操作用
19、户的用户编号,保 证了对进、出库信息录入负责人的确认。(3)部门资料管理与库存报表生成。资料管理包括了人员信息管理,财政支出信息管理,以 及 各 项业务单据的资料管理。报表主要分类为:日报表,月报表,销售报表,入 库报表等等。(4)由于计算机能存贮大量的数据,而且数据只要一次存入,便可多次重复使用,所以 管 理 数 据达到完整,统一,原始记录能保证及时,准确。(5)许多重复性的工作,都可由计算机去执行,从而使管理人员从事务性工作解脱出来,真 正 变 为从事一些信息的分析,判断,决策等创造性的工作。2.2 系统流图 仓库管理系统 存储文件 出 库 信 息 处 理 入 库 信 息 处 理 库存操作
20、 采购货物入库 库存报表 库存报表 出库信息表 入库信息 供货商出入库 定货报告 查询操作 购货商需求表 K2MG-E专业技术人员绩效管理与业务能力提升练习与答案 10 2.3 数据描述 2.3.1 数据字典 2.3.1.1 基本数据项及数据结构 零部件信息。包括的数据项有零件号、零件名称、规格、单价、描述。仓库信息。包括的数据项有仓库号、已用库存、库存总量、负责人、电话号码。供应商信息。包括的数据项有编号、供应商、电话号码、地址。部门信息。包括的数据项有部门号、名称、电话。数据项名称 别名 简述 类型 长度 取值范围 零件号-零件的编号 字符型 7 第 1 位:进口/国产(I/D)第 2-4
21、 位:类别 第 5-7 位:物资编号 零件名称-零件的名称 字符型 20-规格-零件规格 字符型 10 单价-零件的单位价格 货币型 6 默认计量单位:元 描述-零件描述/说明 文本型-仓库号-仓库的编号 字符型 3-已用库存-仓库已用存储容量 数值型 6 0:仓库非空=0:空仓库 0:物资存量=0:空仓库 0:不允许 负责人-仓库负责人 字符型 20-供应商编号-供应商编号 字符型 3-供应商-供应商名称 字符型 20-地址-供应商联系地址 文本-部门号-公司部门编号 字符型 3-部门名-公司部门名称 字符型 20-电话-电话号码 字符型 15-2.3.1.2 数据流条目 名称 别名 简述
22、来源 去向 入库单-入库单位在把相应的零件送人仓库时必须填写的单据 供应商 库存 出库单-领料人员从仓库中领取零件时必须填写的单据 库存 公司部门 客户 还库单-零件使用后归还入库必须填写的单据 公司部门 库存 需求单-对新零件需求所填写的单据 公司部门 库存 采购单-购买新零件所填写的单据 采购员 供应商 2.3.1.3 数据存储条目 名称 别名 简述 组织方式 查询要求 K2MG-E专业技术人员绩效管理与业务能力提升练习与答案 11 仓库库存-存放 索引文件,以仓库编号为关键字 要求立即查询 零件库存-存放 索引文件,以零件编号为关键字 要求立即查询 2.3.1.4 加工条目 加工名 激发
23、条件 优先级 输入 输出 零件入库 接收到 合格 入库单时 普通 合格 入库单 库存满,零件成功入库 加工逻辑 根据库存记录。Loop:If(入库物资的数量+物资现有存量)=该物资库存量临界值 Then 物资存入仓库;物资现有存量=物资现有存量+入库物资的数量;Else 物资库存已足,If 物资现有存量=该物资库存量临界值 Then 结束,入库失败 Endif;调整入库单;goto loop,直到(入库物资的数量+物资现有存量)=该物资库存 量临界值;Endif;零件入库;统计仓库库存已用量;加工名 激发条件 优先级 输入 输出 零件出库 接收到 合格 出库单时 普通 合格 出库单 库存量不足
24、,零件成功出库 加工逻辑 根据库存记录。Loop:零件是否存在?是:If 需求单物资的数量该物资库存量的临界值 Then 零件出库 物资现有存量=物资现有存量-出库零件的数量;K2MG-E专业技术人员绩效管理与业务能力提升练习与答案 12 Else 物资短缺,If 物资现有存量=该物资库 存量临界值;Endif;否:零件不存在,goto loop;零件入库;统计仓库库存已用量;2.3.2 数据流图 1)本系统的顶层数据流图 2)细化后的数据流图 3)货物入库信息管理细化 4)货物出库信息管理细化 2.4 安全性和完整性要求 2.4.1 安全性要求 系统安全性要求至少达到 TCSEC(TDI)的
25、 C1级。即只提供了非常初级的自主安全保护。能够实现对用户和数据的分离,进行自主存取控制(DAC),保护或限制用户权限的传播。实行用户标识与鉴别,具有数据备份和日志审计功能。2.4.2 完整性要求 K2MG-E专业技术人员绩效管理与业务能力提升练习与答案 13 每个关系中都至少要有一个主键,并且都有一个聚集索引(Clustered Index)。关系与关系之间通过主外键关联。定义属性上的约束条件,定义触发器。三、概念结构设计 1)库存实体 E-R 图:2)入库实体 E-R 图:3)出库实体 E-R 图:4)部门需求实体 E-R 图:5)还库实体 E-R 图:6)计划采购实体 E-R 图:7)实
26、体和实体之间的关系图如图所示:8)仓库管理 E-R 图如图所示 四、逻辑结构设计 4.1 关系模型设计 1)仓库表 storehouse K2MG-E专业技术人员绩效管理与业务能力提升练习与答案 14 NO.字段名 代码 类型 约束 1 仓库号 stoID Char(3)主键 2 已用库存 Used_volume Smallint 非空,默认0,unsigned,=Min_volume,mysqldump-user=root -password=the_mysql_root_password -result-file=outputfile.sql-databases warehouse 2)局
27、部备份:备份具体某些表 shellmysqldump-user=root -password=the_mysql_root_password -result-file=outputfile.sql-databases warehouse table_name 6.2.2 动态备份 运行服务器进行数据更新,用 FLUSH LOGS 或 mysqladmin flush-logs 清空日志进行定期增量备份。如果 mysqld 在运行则停止,然后用-log-bin=file_name选项来启动。当想要进行增量K2MG-E专业技术人员绩效管理与业务能力提升练习与答案 35 备份时(包含上一次完全备份或
28、增量备份之后的所有更改),应使用 FLUSH LOGS 回滚二进制日志。然后,你需要将从最后的完全或增量备份的某个时刻到最后某个点的所有二进制日志复制到备份位置。这些二进制日志为增量备份。下次进行完全备份时,还应使用 FLUSH LOGS 或 mysqlhotcopy-flushlogs 回滚二进制日志。另外可以使用事件对某个表数据进行自动定时备份,但那样占用相当的数据库系统资源处理事件,会影响服务器的性能。6.2.3 恢复备份 1)静态数据恢复 假定所备份的数据库已经存在,以管理员身份登录数据库,输入命令:use backup_database_name;source backup_name
29、.sql;2)动态数据恢复 1.恢复原 mysqldump 备份,或二进制备份。2.执行下面的命令重新更新二进制日志:shellmysqlbinlog hostname-bin.0-9*|mysql 6.3 界面设计 登录界面和用户管理界面 信息查询界面 零件信息管理界面和部门信息管理界面 供应商信息管理界面和零件入库管理界面 K2MG-E专业技术人员绩效管理与业务能力提升练习与答案 36 零件出库管理界面和零件还库管理界面 零件供应管理界面和部门需求管理界面 计划采购管理界面和仓库管理界面 主界面界面 6.4 关键代码 1)创建用户并分配权限 2)修改用户(包括权限重新分配)3)根据不用用户
30、分配不同的功能 七、系统测试方案 7.1 登录测试 输入空账号 输入不存在的账号密码 输入正确的账号和错误的密码 输入正确账号和空密码 7.2 新建用户测试 K2MG-E专业技术人员绩效管理与业务能力提升练习与答案 37 创建一个已存在的账号 创建每种用户类型的空密码的账号 正常创建每种用户类型的账号(非空密码)创建每种用户类型的空账号且空密码 创建每种用户类型的非空密码的空账号 7.3 更改用户测试 更改每种用户类型已存在的用户 更改每种用户类型一个不存在的用户 每种用户类型将一个非空密码的用户改为空密码 每种用户类型将一个空密码的用户改为空密码 每种用户类型将一个用户只更改权限 每种用户类
31、型更改一个空账号密码的用户 每种用户类型更改一个空帐户但密码非空 7.4 删除用户测试 删除一个不存在的用户 删除一个已存在的用户 删除一个空用户 7.5 数据录入测试 录入一条空记录 录入一条以上全部数据项非空记录 录入一条以上只填必填数据项的记录 录入一条以上只填非必填数据项的记录 对具有外键关联的表录入一条以上检验外键约束的记录 录入一条以上正确的记录 K2MG-E专业技术人员绩效管理与业务能力提升练习与答案 38 录入一条以上检验其他自定义完整性约束的记录 7.6 查询测试 正常查询一条以上记录 查询各种查非所查的记录 查询各种不对应选项的查询 八、系统主要功能和使用说明 本系统的主要
32、功能如下表所示:不同的用户类型具有不同的功能。Inf 用户类型:注销、登录、退出、信息查询;Dba 用户类型:系统管理、仓库管理;Sys 用户类型:系统管理、仓库管理、备份恢复。正确登录系统,选择程序菜单上的菜单项进入相应的功能窗体进行操作。:第一条记录 :最后一条记录 :下上一条记录和下一条记录:添加一条记录和删除一条记录 :提交改变和取消改变:编辑记录 :刷新记录 九、系统安装说明 由于 MyDAC 插件的关系,插件存在着“MyDAC trial version requies C+Builder IDE”(MyDAC 试用版依赖于 C+Builder IDE),所以安装有点麻烦。运行此程
33、序必须安装C+Builder 6.0、MyDAC 5.70和 MySQL 5.1,运行此程序前必须先运行 C+Builder IDE。数据库连接及数据导入。安装好 MySQL 后以管理员登录,登录后输入命令:create database warehouse character set gbk;导入数据,输入命令:K2MG-E专业技术人员绩效管理与业务能力提升练习与答案 39 use warehouse;source warehouse.sql;(如果 warehouse.sql 文件不是在当前目录,请指明 warehouse.sql的详细目录)创建程序默认用户:create user inf
34、localhost identified by inf;create user dbalocalhost identified by dba;create user syslocalhost identified by sys;数据库连接:(1)进入 Windows 的控制面板,在控制面板中找到【数据源(ODBC)】选项并双击,进入【ODBC 数据源管理器】对话框。如果控制面板中没有该选项可以在 Windows 目录下查找“odbcad32.exe”可执行文件并运行它。(2)选择【系统 DSN】选项卡并单击【添加】按钮,出现创建新数据源窗体,从中选择【MySQL ODVBC 5.1 Drive
35、】项。(3)单击【完成】按钮,出现数据源参数设置窗体,从中输入数据源的名称及数据源指向的服务器名称,本例输入的是 warehouse 和 localhost,端口号为3306,数据库选择warehouse,填写完账号密码后点击【test】,测试成功后点击【OK】退出配置,完成 MySQL的 ODBC 数据源的建立。十、心得体会 在这次数据库课程设计中,我花了3周的时间做需求分析和数据库设计,只用了不到一周的时间编写程序。开始时真的不知道该怎么做,仓库管理系统到底要创建哪些表,表里到底要有哪些数据项,这些都很模糊。于是就找别人的设计作参考,按着设计要求一步一步的设计。需求分析真的很重要,也不容易
36、,比编程还难。在需求设计阶段,把系统的功能勾画出来,分析系统的数据字典、数据流向,画出 E-R 图,根据 E-R 图数据库设计关系模型,这样一步步下来,自己对仓库管理系统有更多的了解,对后面的程序编程也明朗了。在数据库设计的时候也花了不少的时间,多次的在数据库关系模型、E-R 图和数据字典之间循环修改,重复的修改完整性定义,优化表格。在定义 check 完整时发现 MySQL 的 check 完整性定义失效,翻书发现原来 MySQL 对 check 的完整性定义还没有强化。等数据关系模型最终确定了,才开始设计索引和触发子。之后的编程就简单多了。在数据库设计期间,我是在设计的过程中就去创建数据库
37、,建表,所以当修改完整性定义和数据项时现得相当麻烦,因为有主键外键的完整性定义在修改时就不好做了。最终结论,我该把数据库设计完后才去创建K2MG-E专业技术人员绩效管理与业务能力提升练习与答案 40 数据库创建完整性定义等等,还有一点是创建表时最好也把后面程序功能的需要考虑进来。在这次数据库课程设计中真的学到不少。参考文献 1 MySQL 5.1参考手册 http:/ 2 D http:/ 数据库系统概论(第四版)王珊 萨师煊 高等教育出版社 2006.5 4 软件工程(第二版)李代平等编著 清华大学出版社 2008.1 5 MySQL 开发者 SQL 权威指南(荷)Rick F.van der Lans 著 许杰星 李强等译 机械工业出版社 2008.1 6 学习 MySQL(影印版)Seyed M.M.Saied Tabagbogbi&Hugb E.Williams 著 南京:东南大学出版社 2007.6 7 C+Builder 程序员成长攻略 蒙祖强 龚涛等编著 北京:中国水利水电出版社 2007.1 世上没有一件工作不辛苦,没有一处人事不复杂。不要随意发脾气,谁都不欠你的
限制150内