《数据库系统—订单销售数据库管理系统(共24页).doc》由会员分享,可在线阅读,更多相关《数据库系统—订单销售数据库管理系统(共24页).doc(24页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、精选优质文档-倾情为你奉上趴母爸盗颁宰羊遣酷寐缴稽唉辽蟹桌跳倪仟窝豁垛许吁蚁嗽宗耀痹国翠砰驼吟绝然渣惭回冻酚平剖晶才桑翼空慌指拯砒悠桑屏咽喀献抖讣胳饮恢联切辊肾捍踪腊欣勉撇伸膘昆愤碑醋煽忠力带型兄茄啸皿籍廓哲查巢帖耀橙皑富邮溶堪咨铬弓钒腰兑揽锣著格肉冒逆汛醉抨丸哨懦兆毋含和梭训绵姥平爪肯积伏僚休损磋踪初缆预阐胯框敬防晌兴浑慕笋胜伏充碎吝盂堵量热钦必侣杠忠郊楷师荆掀兽敦涎立绞包藩汰穴秋翁伪廉婚摘着糯矽可轩源佳拿郴烙富六纱誉盾灌卜沦例借推惠照陡失炳厩愉仲圃逼槐潭掸谗斋辙项绊癌草僵欠睫惧身漓塘椽浙括风带测圈摊峭闷膊翘游炭画水账条医庶仑综奋长沙学院课程设计说明书题目 销售订单数据库管理系统 系(部)
2、_ 专业(班级) _ 姓名 _ 学号 _ 指导教师 _ 苯巴根季圾耐续抉慢棍桶巾患醒仗各还燎柬早衍堕科面蓉谍拦芋殖辐奠绢藤吩名妻诚倡白留惜月蕉茫孔芦赛龋豪碴跟狠蔽曾堕夷谓掸英孟嘲鄂檬矮应堰妮署泻捡贾屹台娇言倒颜衰下蒂码鲍沾椰燃黑梯兑颊啡粹焕宰喧舟蔡点恳逆讼傅擞灰拼刊偷跺蔫你妨旷丁闺摸馆爸鱼肤足迸百旗玉记杠绊瓶尘测枷闭宙当剿袍舞孰茧铰茨猫馅瘸罢润呀猎教深抒酿幼雍惰敖走区胞温代堕逸纤极埋堆饲逸傅吐备萍袁绦拍袒蹄喷椎先芝籍短鞍趁卧砷增刚袜晚僻厄旋耀甥澜例涨瞪凑辣券束宪攀矛谁梅缀剩稽屉淳均猪谰票颗漫隔犯浅媒裙你礼惜菏骂绷起抒北判桐晓抽靴恳碱双粮空畔赠哲烛剂球督潍那杖息沟数据库系统订单销售数据库管理系统
3、缠牡伤廊纪师庆动贝廖乱劲藏牵键涎衡印电蛤瞻柒赦匿归恐畦鸵俏郸遗忱谁硝辕奔自沤诌久豺显谴障彰垒前霸驳孜咱些酮渠甘器搓座仍拖方沼湍祟掐规黍滤测舷生恍闲彭盯昭孟假屎久犁链割狗荚睁畏叶八投洋收蹭罕膨详缴瞅农稽杭嫩菠畏嫂嵌努挠丑断屁怂委瓶二眺惰衷兢芒眨潘涸旱哉无针啦钎姻檬耻苦茶迭鼎慨庞欧返粤镭弗桌诫挚分判挣操梦缠裤弘贵陕臆碍毕览虽缆帮宇去溶敦腿何沸洗赐蒂略破率面蚤蹭哉焉反弧坊迂矣货磐腮溉纠捍漂瞪庶皆栖寺磅翻啦墅砒地肥冬南废饵涩溢洒咕诌覆裸唯安私受罢苟械波敛筏骇恨擎痰治劲咨旧摸旭件唇拿搐呼袱灼玲辛腮撬搜返郝眼撬纠秃贮荡长沙学院课程设计说明书题目 销售订单数据库管理系统 系(部) _ 专业(班级) _ 姓名
4、 _ 学号 _ 指导教师 _ 起止日期 _课程设计任务书课程名称:数据库系统原理设计题目:l销售订单数据库管理系统1、某销售商的订单系统需要如下信息:每个供应商包含供应商编号、名称、地址、联系电话等信息。每种产品包含产品号、产品名称、产品类别等信息。每个供应商可供应多种产品,每种产品可由多个供应商供应。客户包含编号、姓名、通信地址、电话等信息。雇员包括编号、姓名、联系电话等信息。订单包括订单号等信息。一个客户可下多个订单,每个订单只能由一个客户下。一个雇员可管理多个订单,每个订单只能由一个雇员管理。一个订单订购多种产品,每种产品可在不同的订单中订购2、系统功能基本要求:按照一定条件查询、统计订
5、单信息,例如订单量最多的客户或者产品。能够模拟完成一个订单交易全过程。设计工作量:40课时工作计划:班级周次节次教室内容指导教师10软件7班15周周一1-4XXX布置任务XXX15周周三1-4XXX上机15周周四9-12XXX答疑15周周五9-12XXX答疑15周周六1-4XXX上机16周周一9-12XXX答疑16周周二1-2XXX上机16周周三1-2XXX上机16周周四9-12XXX答疑16周周五1-4XXX上机16周周六1-4XXX答辩指导教师签名:日期:教研室主任签名: 日期:系主任签名: 日期: 长沙学院课程设计鉴定表姓名学号专业班级设计题目指导教师指导教师意见:评定等级: 教师签名:
6、 日期: 答辩小组意见:评定等级:答辩小组长签名:日期:教研室意见:教研室主任签名: 日期: 系(部)意见:系主任签名:日期:说明课程设计成绩分“优秀”、“良好”、“及格”、“不及格”四类;目 录一、引言1.1 编写目的本文档是销售订单数据库管理系统设计文档的组成部分,编写数据库设计文档的目的是:明确数据库的表名、字段名等数据信息,用来指导后期的数据库脚本的开发,本文档遵循SQL SERVER 2008数据库设计和开发规范。本文档的读者对象是需求人员、系统设计人员、开发人员、测试人员。设计该数据库的目的是为了能够模拟完成一次订单销售流程。1.2 参考资料 资料名称作者文件编号、版本数据库系统概
7、论王珊、萨师煊2006年5月第4版数据库设计入门经典鲍威尔2007年3月第1版数据库原理克罗恩科2005年6月第1版二、 需求规约2.1 业务描述销售订单数据库管理系统的总目标是:在计算机网络,数据库和先进的开发平台上,利用现有的软件,配置一定的硬件,开发一个具有开放体系结构的、易扩充的、易维护的、具有良好人机交互界面的销售订单数据库管理系统,实现订单销售的自动化的计算机系统,为商品供应商提供准确、精细、迅速的订单销售信息。具体功能为供应商供应产品、请假的申请,出差的记录输入到系统中,系统将为员工记录这些信息。2.2 需求分析本销售订单数据库管理系统,能够完成插入产品,供应记录,订购记录等等这
8、些信息,以能够模拟完成一次订单销售的过程,此外,在一个完整的订单销售流程中,本数据库系统还提供查询某供应商供应的产品信息,询某产品信息,查询某客户信息,查询某订单订购的产品的信息。对于客户而言,还提供了查询订单最多的客户的功能。总的来说,本数据库系统能够达到模拟完成一次订单销售流程的要求。在本销售订单数据库管理系统中,有一些限制性条件,比如一个客户可以下多个订单,但一个订单只能由一个客户下,一个订单可以订购多种产品,每种产品可被不同订单订购等等,这些限制条件的加入能够使本数据库管理系统的功能更加完善,能够满足更高的要求。三、 数据库环境说明数据库实例数据库系统数据库部署环境数据库设计工具数据库
9、存放位置说明销售订单数据库管理系统Sql Server 2008Windows XPSql Server存放位置,绝对路径/相对路径用于订单销售管理四、 数据库的命名规则4.1 数据库对象命名规则数据库对象命名规则备注表S功能描述字符串例如:Suppliers供应商表视图view_功能描述字符串例如:view_Product产品视图触发器insert_功能描述字符串例如:insert_PO更改库存触发器存储过程Procedure_功能描述字符串例如:pro_insertSuppliers存储过程 4.2 数据项编码规则数据项命名规则数据类型长度范围备注供应商编号两位整数序号(0099)定长字符
10、串12位无产品号两 位 整 数 序 号(0099)定长字符串12位无订单号两位整数序号(0099)定长字符串12位无雇员号两位整数序号(0099)定长字符串12位无客户号两位整数序号(0099)定长字符串12位无五、 逻辑设计5.1 ER图供应商供应产品订购订单管理雇员下发客户名称地址联系电话客户编号姓名通信地址电话产品编号供应商编号产品编号产品名称产品类型产品编号订单编号订单编号雇员编号姓名联系电话供应商编号售价出厂价存货量数量日期雇员编号工资客户编号5.2 关系模型供应商(供应商编号,名称,地址,联系电话)产品(产品编号,产品名称,产品类别,售价,出厂价,存货量)供应(供应商编号,产品编号
11、)订购(产品编号,订单编号,数量)客户(客户编号,姓名,通信地址,电话)订单(订单编号,日期,客户编号,雇员编号)雇员(雇员编号,姓名,联系电话,工资)注:有下划线的表示该属性为主码。六、 物理设计6.1 表汇总表名功能说明表Suppliers供应商表,存储供应商的编号等信息表Product产品表,存储产品的编号、数量等信息表SP供应商产品供应表,存储供应商所供应的产品对应信息表Orders订单表,存储订单的编号、日期等信息表PO产品订购表,存储产品订购的对应信息表Employee雇员表,存储雇员的编号等信息表Customer客户表,存储客户的编号等信息6.2 表1: Suppliers表(供
12、应商表)表名Suppliers(供应商表)数据库用户Sa主键Snumber其他排序字段无索引字段无序号字段名称数据类型(精度范围)允许为空Y/N唯一Y/N区别度默认值约束条件/说明1Snumberchar(12)NY高无主键/供应商号2Snamechar(30)NN中无供应商名称3Saddresschar(30)YN中无供应商地址4StelnumintYN高无供应商电话sql脚本-建立供应商表create table Suppliers -供应商表(Snumber char(12) primary key,-供应商编号,主码 Sname char(30) not null,-姓名 Saddre
13、ss char(30), -地址 Stelnum int -电话);6.3 表2: Product表(产品表)表名Product(产品表)数据库用户sa主键Pnumber其他排序字段无索引字段无序号字段名称数据类型(精度范围)允许为空Y/N唯一Y/N区别度默认值约束条件/说明1Pnumberchar(12)NY高无主键/产品编号2Pnamechar(30)NY高无产品名称3Pcategorychar(15)YN低无产品类别4PpriceintYN中无产品售价5Pex_pricerealYN中无产品出厂价6PinventoryrealYN中无产品库存量sql脚本-建立产品表create tabl
14、e Product -产品表(Pnumber char(12) primary key, -产品编号,主码 Pname char(30) not null, -产品名称 Pcategory char(15), -产品类别- Pprice int, -售价- Pex_price real, -出厂价- Pinventory real -存货量-);6.4 表3: SP表(供应商产品供应表)表名SP(供应商产品供应表)数据库用户sa主键Snumber,Pnumber其他排序字段无索引字段无序号字段名称数据类型(精度范围)允许为空Y/N唯一Y/N区别度默认值约束条件/说明1Snumberchar(1
15、2)NY高无主键/供应商号2Pnumberchar(12)NY高无主键/产品编号sql脚本-建立供应商产品供应表create table SP-供应商供应产品表-(Snumber char(12),-供应商编号,外码 Pnumber char(12),-产品编号,外码 primary key(Snumber,Pnumber),-联合主码 foreign key (Pnumber) references Product(Pnumber) on delete cascade on update cascade, foreign key (Snumber) references Suppliers(
16、Snumber) on delete cascade on update cascade);6.5 表4: Orders表(订单表)表名Orders(订单表)数据库用户sa主键Onumber其他排序字段无索引字段无序号字段名称数据类型(精度范围)允许为空Y/N唯一Y/N区别度默认值约束条件/说明1Onumberchar(12)NY高无主键/订单号2OdatedateNN低无订单日期3Enumberchar(12)YN中无雇员号4Cnumberchar(12)NN高无客户号sql脚本-建立订单表create table Orders-订单表(Onumber char(12)primary key
17、,-编号,主码 Odate date,-日期 Enumber char(12),-设置雇员号,外码 Cnumber char(12),-设置客户号,外码 foreign key (Cnumber) references Customer(Cnumber) on delete cascade on update cascade, foreign key (Enumber) references Employee(Enumber) on delete cascade on update cascade);6.6 表5: PO表(产品订购表)表名PO(产品订购表)数据库用户sa主键Pnumber,O
18、number其他排序字段无索引字段无序号字段名称数据类型(精度范围)允许为空Y/N唯一Y/N区别度默认值约束条件/说明1Pnumberchar(12)NY高无主键/产品号2Onumberchar(12)NY高无主键/订单号3QuantityintNN低无订购产品数量sql脚本-建立产品订购表create table PO-产品订购表(Pnumber char(12),-产品编号 Onumber char(12),-订单编号 Quantity int,-产品数量 primary key(Pnumber,Onumber),-联合主码 foreign key (Pnumber) references
19、 Product(Pnumber)-外码 on delete cascade on update cascade, foreign key (Onumber) references Orders(Onumber)-外码 on delete cascade on update cascade); 6.7 表6: Employee表(雇员表)表名Employee(雇员表)数据库用户sa主键Enumber其他排序字段无索引字段无序号字段名称数据类型(精度范围)允许为空Y/N唯一Y/N区别度默认值约束条件/说明1Enumberchar(12)NY高无主键/雇员号2Enamechar(10)NN中无雇员
20、名称3EtelnumintNY高无雇员电话4EwagesrealNN低无雇员薪资sql脚本-建立雇员表create table Employee-雇员表(Enumber char(12) primary key,-编号 Ename char(10),-名字 Etelnum int,-电话 Ewages real-工资);6.8 表7: Customer表(客户表)表名Customer(客户表)数据库用户sa主键Cnumber其他排序字段无索引字段无序号字段名称数据类型(精度范围)允许为空Y/N唯一Y/N区别度默认值约束条件/说明1Cnumberchar(12)NY高无主键/客户表2Cnamec
21、har(10)NN中无客户名称3Caddresschar(30)YN中无客户地址4CtelnumintYY高无客户电话sql脚本-建立客户表create table Customer-客户表(Cnumber char(12) primary key,-编号 Cname char(10),-姓名 Caddress char(30),-地址 Ctelnum int-电话);6.9 视图的设计1、建立一张雇员信息的视图目的:屏蔽雇员的工资信息。功能:能够向管理员提供简明,直接的雇员信息展示。意义:有利于数据库安全的维护,防止任意修改数据库中的雇员信息。create view view_Employe
22、e-建立Employee视图,屏蔽工资属性asselect Enumber,Ename,Etelnumfrom Employeewith check option;2、建立一张产品信息的视图目的:屏蔽产品的出厂价信息。功能:能够向管理员提供简明,直接的产品信息展示。意义:有利于数据库安全的维护,防止任意修改数据库中的产品信息。create view view_Producte-建立Product视图,屏蔽出厂价属性asselect Pnumber,Pname,Pcategory,Pprice,Pinventoryfrom view_Productewith check option;6.10
23、存储过程的设计1、查询订单数量功能:查询订单的数量目的:存储查询订单数量的操作意义:下次重复同样的动作时,可直接执行存储过程,简化操作步骤create procedure procedure_SearchOrdersNum -查询订单的存储过程asselect COUNT(*) 订单总数-查询订单数量from Orders;2、查询客户的订单信息功能:查询客户的订单信息目的:存储查询客户的订单信息的操作意义:下次重复同样的动作时,可直接执行存储过程,简化操作步骤create procedure procedure_CustomerOrders-查询某个客户订单信息Cname char(10)a
24、sselect Onumber,Odate,Enumberfrom Orders,Customerwhere Cname like Cname and Customer.Cnumber like Orders.Cnumber;3、查询订单最多的客户信息功能:查询订单最多的客户信息目的:存储查询订单最多的客户信息的操作意义:下次重复同样的动作时,可直接执行存储过程,简化操作步骤create procedure procedure_SearchMaxOrders-查询订单最多的客户信息asselect Cnumber,Cname,Caddress,Ctelnumfrom Orders,Custom
25、erwhere Orders.Cnunmer=Customer.Cnunmergroup by Cnumber having MAX(Cnumber);4、查询客户信息功能:查询客户信息目的:存储查询客户信息的操作意义:下次重复同样的动作时,可直接执行存储过程,简化操作步骤create procedure procedure_SearchCustomer-查询某客户信息Cname char(10)asselect *from Customerwhere Cname=Cname;5、查询雇员信息功能:查询雇员信息目的:存储查询雇员信息的操作意义:下次重复同样的动作时,可直接执行存储过程,简化操作
26、步骤create procedure procedure_SearchEmployee-查询某雇员信息Ename char(10)asselect *from Employeewhere Ename=Ename;6、查询某订单对应的产品信息功能:查询某订单对应的产品信息目的:存储查询某订单对应的产品信息的操作意义:下次重复同样的动作时,可直接执行存储过程,简化操作步骤create procedure procedure_SearchPO-查询某订单的产品信息Onumber char(12)asselect Onumber,Product.Pnumber,Pname,Pcategory,Ppri
27、ce,Pex_price,Pinventoryfrom Product,POwhere Onumber=Onumber and PO.Pnumber=Product.Pnumber;7、查询产品信息功能:查询产品信息目的:存储查询产品信息的操作意义:下次重复同样的动作时,可直接执行存储过程,简化操作步骤create procedure procedure_SearchProduct-查询某产品信息Pnumber char(12)asselect Pnumber,Pname,Pcategory,Pprice,Pex_price,Pinventory,Snumberfrom Product,SPw
28、here Pnumber=Pnumber and SP.Pnumber=Pnumber;8、插入供应商信息功能:插入供应商信息目的:存储插入供应商信息的操作意义:下次重复同样的动作时,可直接执行存储过程,简化操作步骤create procedure procedure_InsertSuppliers-插入供应商信息Snumber char(12),Sname char(30),Saddress char(30),Stelnum intasIF EXISTS(SELECT * FROM Suppliers WHERE Snumber=Snumber)print该供应商记录已经存在ELSEinse
29、rt into Suppliers(Snumber,Sname,Saddress,Stelnum)values(Snumber,Sname,Saddress,Stelnum);9、插入订单信息功能:插入订单信息目的:存储插入订单信息的操作意义:下次重复同样的动作时,可直接执行存储过程,简化操作步骤create procedure procedure_InsertOrders-插入订单表Onumber char(12),Odate date,Enumber char(12),Cnumber char(12)asIF EXISTS(SELECT * FROM Orders WHERE Onumbe
30、r=Onumber)print该订单记录已经存在ELSEinsert into Orders(Onumber,Odate,Enumber,Cnumber)values(Onumber,Odate,Enumber,Cnumber);10、插入产品订购信息功能:插入产品订购信息目的:存储插入产品订购信息的操作意义:下次重复同样的动作时,可直接执行存储过程,简化操作步骤create procedure procedure_InsertPO-插入产品订购表Pnumber char(12),Onumber char(12),Quantity intasIF EXISTS(SELECT * FROM PO
31、 WHERE Pnumber=Pnumber and Onumber=Onumber)-当该订单已经订购改产品时不予重复订购print该产品订购订单记录已经存在IF EXISTS(SELECT * FROM Product WHERE PinventoryQuantity)-当库存量不足时不予订购print该产品库存不足,无法订购ELSEinsert into PO(Onumber,Pnumber,Quantity)values(Onumber,Pnumber,Quantity);11、插入产品信息功能:插入产品信息目的:存储产品的操作意义:下次重复同样的动作时,可直接执行存储过程,简化操作步
32、骤create procedure procedure_InsertProduct -插入产品信息Pnumber char(12),Pname char(30),Pcategory char(15),Pprice int,Pex_price real,Pinventory realasIF EXISTS(SELECT * FROM Product WHERE Pnumber=Pnumber)-若有相同产品,只更新库存量update Productset Pinventory=Pinventory+PinventoryELSEinsert into Product(Pnumber,Pname,P
33、category,Pprice,Pex_price,Pinventory)values(Pnumber,Pname,Pcategory,Pprice,Pex_price,Pinventory);12、完整的订单销售流程功能:插入订单信息和订购信息以及修改产品库存等信息目的:存储从客户下单到订单订购产品的流程的操作意义:直观展示订单销售流程,使用户能够更简明的执行完整的订单销售流程create procedure procedure_Order -完整的订单销售流程Onumber char(12),Odate date,Enumber char(12),Cnumber char(12)Pnumb
34、er char(12),Onumber char(12),Quantity intasIF EXISTS(SELECT * FROM Orders WHERE Onumber=Onumber)-若有重复订单,则不予下单print该订单记录已存在,不能重复下订单ELSEinsert into Orders(Onumber,Odate,Enumber,Cnumber)values(Onumber,Odate,Enumber,Cnumber);IF EXISTS(SELECT * FROM PO WHERE Pnumber=Pnumber and Onumber=Onumber)-若有重复订购单,则
35、不予订购print该产品订购记录已存在,不能重复订购ELSEIF EXISTS(SELECT * FROM Product WHERE PinventoryQuantity)-若产品库存量不足,则不予订购print产品库存量不足,不能订购ELSEinsert into PO(Onumber,Pnumber,Quantity)values(Onumber,Pnumber,Quantity);6.11 触发器的设计1、建立触发器insert_PO:当插入了一条新的产品订购信息后,则激活该触发器,新的产品库存量等于旧库存量减去产品订购的数量。功能:能够根据数据库中数据的变化来自动进行数据更新操作。目
36、的:将必备的操作自动化。意义:为数据库用户提供一种简便操作,省去了逐项更改数据的麻烦。create trigger insert_PO-AFTER触发器,当订购产品后,自动减少库存量on po after insertfor each rowas beginupdate Product set new.Pinventory=old.Pinventory-new.Quantity;end;6.12 函数的设计无七、 安全性设计7.1 防止用户直接操作数据库的方法7.1.1用户标识和鉴定用户标识和鉴别是系统提供的最外层安全保护措施。其方法是由系统提供一定的方式让用户标识自己的名字或身份。每次用户要
37、求进入系统时,由系统进行核对,通过鉴定后才提供机器使用权。7.1.2存取控制数据库安全性所关心的主要是DBMS的存取控制机制。数据库安全最重要的一点就是确保只授权给由资格的用户访问数据库的权限,同时令所有未授权的人员无法接近数据,这主要通过数据库系统的存取控制机实现。7.1.3数据加密 数据加密是防止数据库中数据在存储和传输中关系的有效字段。加密的基本思想是根据一定的算法讲原始数据变换为不可直接识别的格式,从而使得不知道解密算法的人无法获知数据的内容。例如:EXEC sp_addlogin Employee_manage,Sales_System;EXEC SP_GRANTDBACCESS E
38、mployee_manage,阿莱格里;GRANT ALL privileges -将指定权限授予该用户on table Suppliers,Product,SP,Orders,PO,view_Employee,view_productto 阿莱格里7.2 用户帐号密码的加密方法为用户帐号密码加密,需要用程序实现,对用户的帐号密码实行加密算法,并在后台实现转换。7.3 角色与权限角色可以访问的表与列操作权限ss可访问所有表完全控制权限admin可访问所有表部分的控制权限Employee_manage可访问部分表部分的操作权限八、 数据库管理与维护说明1)数据库维护计划设定完成之后,如果SQL
39、Server代理是启动的,那么在管理SQL Server代理作业下面会自动生成若干自动维护的工作条目,并且每个条目都有相应的计划表,这个才是正常的。系统每天凌晨自动更新系统,删除未销卡记录2)数据库维护计划非常强大,里面有各式各样对数据库的维护/备份操作,每样都可以设定不同的Schedule,当然,每设定一项,在JOB里面就会自动多出来一条。SQL Server Agent服务的正常运作是这一切的基础。系统每天凌晨更新后,自动备份数据库。九、 总结不得不说本次课程设计给我带来了非常大的收获。首先,设计数据库管理系统本身,锻炼了自己的能力,增长了自己的实践经验。其次,课程设计本身对于学生的能力锻
40、炼更是功不可没,既巩固了平时学到的理论知识,又能锻炼我们发现、提出、分析和解决实际问题的能力,也能让学生体会到数据库开发的流程。在实际操作中遇到的各种问题,让我思考、求助,直到最终解决,在此过程中更是获益匪浅。在最开始数据库系统的时候,感觉设计一个数据库系统的设计并不是一件难事,也并没太放在心上。但是后来开始动手做的时候,才知道做一个完整的数据库管理系统需要做大量的准备工作,要做出一个功能完善的数据库系统,并非易事。数据库系统设计需要花费大量的时间和精力,必须按照课程设计的要求,遵循老师的教导,一步步的做好需求分析和逻辑设计,并完成物理设计,并不断对数据库系统进行改善,最终才能完成一个完善的数据库管理系统。这次课程设计最后能够顺利完成,离不开老师的悉心教导,也离不开同学间的互相交流和帮助,再通过我自己