逄治明数据库课程设计报告(参考_第1页
逄治明数据库课程设计报告(参考_第2页
逄治明数据库课程设计报告(参考_第3页
逄治明数据库课程设计报告(参考_第4页
逄治明数据库课程设计报告(参考_第5页
已阅读5页,还剩9页未读 继续免费阅读

下载本文档

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

文档简介

1、.大 连 科 技 学 院数据库课程设计题 目 超市管理系统 学生姓名 张玉东 专业班级 计算机11-1班指导教师 何丹丹 职称 讲师 所在单位 信息科学系软件工程教研室 教学部主任 王立娟 完成日期 2014年10月19日课程设计报告单学号1106020117姓名 张玉东专业班级计算机11-1班考 核 项 目评分备注1平时工作态度及遵守纪律情况(10分)2掌握基本理论、关键知识、基本技能的程度和阅读参考资料的水平(10分)3独立工作能力、综合运用所学知识分析和解决问题能力及实际工作能力提高的程度(20分)4完成课程设计说明书及软件的情况与水平(小组分工情况、规范性、整洁清楚、叙述完整性、思路清

2、晰程度、工作量及实际运行情况和创新性)(60分)总评成绩综 合 评 定:(优、良、中、及格、不及格) 指导教师签字:年 月 日数据库课程设计任务书一、课程设计的目的数据库课程设计是软件工程专业(本科)教学大纲要求的重要实践性环节之一,是学习完数据库原理及应用和Oracle数据库应用两门课程后进行的一次数据库方面的综合练习。其目的在于:配合数据库原理及应用和Oracle数据库应用课程的教学,使学生能巩固和加深对数据库基础理论和基本知识的理解;掌握使用数据库进行软件设计的基本思想和方法;提高学生运用数据库理论解决实际问题的能力;培养学生调查研究、查阅技术文献、资料、手册以及编写技术文献的能力。二、

3、课程设计的内容及要求内容:用一种高级语言和当前流行的数据库管理系统相结合,完成一个小型管理系统的设计与开发。所设计的小型管理系统应包含两个以上(不多于4个)的模块以及输入输出、查询、插入、删除等基本功能。根据课程设计2周时间的安排选择适当大小的设计课题,课题的选择可以是实际问题,也可以是虚构的问题。根据题目的基本需求,画出系统结构图,并对数据库进行详细设计,编写程序,同时写出关于本数据库管理系统的报告书。要求:(1) 要求学生按照数据库原理及应用和Oracle数据库应用相关知识以及数据库课程设计教学大纲完成一个数据库设计,并撰写相应的课程设计报告。(2)提交课程设计报告。要求完成课程设计报告大

4、约15页-20页,包括相应的模块设计文档、数据库设计文档、所承担模块的核心代码、测试过程分析与运行结果等。分组进行的同学共同完成基本设计与数据库设计,但每个人至少必须独立完成一个模块设计与实现,并写入课程设计报告中。三、课程设计时间课程设计时间为2周(10个工作日)四、课程设计分组一人一组五、课程设计的成果和形式1报告一篇2符合设计要求的数据库应用系统一个指导教师签字:年 月 日目 录题目:11.需求分析12数据库概要设计13数据库逻辑设计34.数据库实施45.系统实现76.测试结果15参考文献16. v.超市管理系统设计与实现1.需求分析随着现代软件的发展,手工分析方式已经很难满足系统数据库

5、分析的要求,必须借助于相应的工具。数据库需求分析是系统开发周期中的一个重要阶段。在开发超市管理系统时,可以进行E-R图分析,然后在对表格进行分析,从而对超市的管理系统有个清晰的了解。超市管理系统的数据主要涉及文本信息,使用Oracle9i来实现数据库的信息管理。2. 数据库概要设计1. 产品信息表表Good主要来统计超市商品的详细信息,包括商品的ID号、名称、数量和价格表等详细信息。相应属性如表9.1所示。表1.1 产品属性表字段名称 数据类型 大小 默认值 可否为空 主键ID号自动长整型8无否是名称字符15无是否数量自动长整型8是否价格整型8是否2.顾客属性表表Customer主要用来统计超

6、市各科的详细信息,包括顾客的电话、姓名、购买的商品的ID号和订单号等详细信息。相应属性如表9.2所示表1.2 顾客属性表字段名称数据类型大小默认值可否为空主键电话自动长整型8无是否姓名字符15无是否产品ID号自动长整型8否是订单号整型8否是3.客户属性表表Customer1主要用来统计超市大客户的详细信息,包括客户的电话、姓名、购买商品的ID号和订单号等详细信息。对应得表格属性如表9.3所示表1.3大客户属性表字段名称数据类型大小默认值可否为空主键电话自动长整型8无是否姓名字符15无是否产品ID号自动长整型8否是订单号整型8否是4.仓库属性表 表Ware主要用来统计超市仓库信息,包括仓库的名称

7、、ID号、存放的商品的ID号等详细信息。对应的表格属性如表9.4所示。表1.4仓库属性表字段名称数据类型大小默认值可否为空主键名称字符15无是否ID号自动长整型8无否是产品ID号自动长整型8无是否5.小订单属性表 表LittlePaper主要用来统计超市顾客的小型订单信息,包括订单的ID号、购买订单商品的ID号、购买的数量和总计金额等一些信息,对应的表格属性如表9.5所示。表1.5 小订单属性表字段名称数据类型大小默认值可否为空主键订单ID号自动长整型8无否是数量字符15无是否产品ID号自动长整型8无是否总计金额整型8无是否6.合同订单属性表 表Paper主要用来统计超市大客户的合同订单信息,

8、包括订单的ID号、购买的商品的ID号、购买的数量和总计金额等一些信息,对应的表格属性如图表9.6所示。表1.6 合同订单属性表字段名称数据类型大小默认值可否为空主键订单ID号自动长整型8无否是数量字符15无是否产品ID号自动长整型8无是否总计金额整型8无是否7.表Worker主要用来统计超市相应超市人员的详细信息,包括超市人员的姓名、订单的ID号、商品的ID号和员工ID号等详细信息。表1.7 超市员工信息表字段名称数据类型大小默认值可否为空主键订单ID号字符15无是否数量自动长整型8无否是产品ID号自动长整型8无是否总计金额整型8无否是3. 数据库逻辑设计实现E-R图向关系模型的转换,特别注意

9、实体的1:n联系,优化数据模型。详细说明实体、实体属性和实体之间的关系、完整性约束 建立的关系模式必须符合第一范式。 选择合适的支持关系模型的DBMS。4. 数据库实施 库和表的建立*创建顾客属性表在数据库“liuyong”中创建“Customer”表CREATE TABLE "HR"."CUSTOMER" ("TEL" NUMBER(8),"NAME" VARCHAR2(15),"GOODID" NUMBER(8) NOT NULL,"PAPERID" NUMBER(8)

10、NOT NULL);向表中插入数据INSERT INTO "HR"."CUSTOMER"("TEL","NAME","GOODID","PAPERID" )VALUES(61489566,'王刚',20021016,2002100 )INSERT INTO "HR"."CUSTOMER"("TEL","NAME","GOODID","PAPERID&q

11、uot; )VALUES(61459862,'李明',20021012,2002101 )INSERT INTO "HR"."CUSTOMER"("TEL","NAME","GOODID","PAPERID" )VALUES(61259256,'陈峰',20021011,2002102 )INSERT INTO "HR"."CUSTOMER"("TEL","NAME"

12、;,"GOODID","PAPERID" )VALUES(89236512,'李志强',20021013,2002104 )INSERT INTO "HR"."CUSTOMER"("TEL","NAME","GOODID","PAPERID" )VALUES(68942365,'卓名',20021016,2003201 )INSERT INTO "HR"."CUSTOMER&

13、quot;("TEL","NAME","GOODID","PAPERID" )VALUES(56892146,'欧阳明',20031023,2003106 )INSERT INTO "HR"."CUSTOMER"("TEL","NAME","GOODID","PAPERID" )VALUES(56841232,'顾洪亮',20021056,2003221 )INSE

14、RT INTO "HR"."CUSTOMER"("TEL","NAME","GOODID","PAPERID" )VALUES(75612354,'刘江',20031022,2003115 )INSERT INTO "HR"."CUSTOMER"("TEL","NAME","GOODID","PAPERID" )VALUES(96812345

15、,'朱富春',20031016,2003120 )INSERT INTO "HR"."CUSTOMER"("TEL","NAME","GOODID","PAPERID" )VALUES(56232236,'江伟',20021026,2003108 ) 图2.1*建立大客户属性表在数据库“liuyong”中创建Customer1表CREATE TABLE "HR"."CUSTOMER1"("TEL

16、" NUMBER(8),"NAME" VARCHAR2(15),"GOODID" VARCHAR2(8)NOT NULL,"PAPERID" VARCHAR2(8) NOT NULL );向表中插入数据INSERT INTO "HR"."CUSTOMER1"("TEL","NAME","GOODID","PAPERID" )VALUES(56891236,北京鼎盛超市,20031026,2003p511 )

17、INSERT INTO "HR"."CUSTOMER1"("TEL","NAME","GOODID","PAPERID" )VALUES(89561223,世纪电脑公司20031563, 2003p623)INSERT INTO "HR"."CUSTOMER1"("TEL","NAME","GOODID","PAPERID" )VALUES(75698231

18、,苹果电脑公司20035212,2003p635)INSERT INTO "HR"."CUSTOMER1"("TEL","NAME","GOODID","PAPERID" )VALUES(25984123,IBM电脑公司20035121,2002p623)INSERT INTO "HR"."CUSTOMER1"("TEL","NAME","GOODID","PAPER

19、ID" )VALUES(32659874,惠普公司20032356,2002p689)INSERT INTO "HR"."CUSTOMER1"("TEL","NAME","GOODID","PAPERID" )VALUES(68952126,清华同方20032145,2003p201)INSERT INTO "HR"."CUSTOMER1"("TEL","NAME","GOOD

20、ID","PAPERID" )VALUES(56841232,清华紫光20032546,2003p221)INSERT INTO "HR"."CUSTOMER1"("TEL","NAME","GOODID","PAPERID" )VALUES(68951232,北大方正20032167,2002p230)INSERT INTO "HR"."CUSTOMER1"("TEL","N

21、AME","GOODID","PAPERID" )VALUES(89561223,四通集团20025612,2003p213)INSERT INTO "HR"."CUSTOMER1"("TEL","NAME","GOODID","PAPERID" )VALUES(56781223,联想集团20036982,20031034) 图2.25. 系统实现1 登陆页面的实现import javax.swing.*;import jav

22、a.awt.*;import javax.swing.border.*;import java.awt.event.*;import java.sql.*;public class denglu public static void main(String args) FirstWindow win=new FirstWindow("超市管理系统"); class FirstWindow extends JFrame implements ActionListener Box baseBox,boxV1,boxV2; JLabel label,label1; JComboB

23、ox list; JButton loginButton; JTextField text1; JPasswordField text2; String code,inputNumber1; FirstWindow(String s) super(s); setLayout(null); label=new JLabel("春光超市",new ImageIcon("仓库.png"),JLabel.RIGHT); add(label); Font f1=new Font("宋体",Font.BOLD,30); label.setFont

24、(f1); label.setBounds(35,20,250,60); label1=new JLabel("账号或密码错误",new ImageIcon("no.png"),JLabel.RIGHT); add(label1); label1.setVisible(false); label1.setBounds(88,165,150,20); boxV1=Box.createVerticalBox(); boxV1.add(Box.createVerticalStrut(10);/设置垂直支撑距离 boxV1.add(new JLabel(&quo

25、t;账号:",new ImageIcon("笑脸.png"),JLabel.RIGHT); boxV1.add(Box.createVerticalStrut(12); boxV1.add(new JLabel("密码:",new ImageIcon("密码.png"),JLabel.RIGHT); boxV2=Box.createVerticalBox(); boxV2.add(Box.createVerticalStrut(13); text1=new JTextField(12); boxV2.add(text1);

26、boxV2.add(Box.createVerticalStrut(5); text2=new JPasswordField(12); boxV2.add(text2); baseBox=Box.createHorizontalBox(); baseBox.add(boxV1); baseBox.add(Box.createHorizontalStrut(10); baseBox.add(boxV2); add(baseBox); baseBox.setBounds(85,90,150,70); loginButton=new JButton("登录",new ImageI

27、con("登陆.png"); add(loginButton); loginButton.addActionListener(this); loginButton.setBounds(130,200,80,30); Cursor c=Cursor.getPredefinedCursor(Cursor.HAND_CURSOR);/设置光标形状 loginButton.setCursor(c); setBounds(550,260,350,280); setVisible(true); setResizable(false); validate(); setDefaultClo

28、seOperation(JFrame.EXIT_ON_CLOSE);/用窗口右上角的关闭窗口 public void actionPerformed(ActionEvent e) if(e.getSource()=loginButton) Connection con; Statement sql; ResultSet rs; tryClass.forName("sun.jdbc.odbc.JdbcOdbcDriver"); catch(ClassNotFoundException e1) System.out.println("+e1); trycon=Driv

29、erManager.getConnection("jdbc:odbc:B_S",","); sql=con.createStatement(); String account=text1.getText(),str; String s=null; inputNumber1=s.copyValueOf(text2.getPassword(); str="select * from ADM where ADM_NAME='"+account+"'and ADM_MM='"+inputNumber

30、1+"'" rs=sql.executeQuery(str); if(rs.next() setVisible(false); SecondWindow win=new SecondWindow("超市管理系统"); else label1.setVisible(true); label1.setText("账号或密码错误"); con.close(); catch(SQLException e2) System.out.println(e2); 5.2商品查询class ThirdWindow1 extends JFrame

31、 implements ActionListener Box baseBox; JComboBox list; JLabel label1,label2,label3,label4,label5,label6,label7,label8,label9; JTable table; JTextField text,text1,text2,text3,text4,text5,text6,text7; JScrollPane scorllpane; JButton button1,button2,button3,button4,button5; JPanel panel; public ThirdW

32、indow1 (String s) super(s); setLayout(null); label1=new JLabel("欢迎进入超市管理系统",new ImageIcon("蝴蝶.gif"),JLabel.RIGHT); label3=new JLabel("商品编号"); label4=new JLabel("商品名"); label5=new JLabel("生产商"); label7=new JLabel("供应商(号)"); label8=new JLabel

33、("售价"); label9=new JLabel("当前数量"); add(label3); add(label4); add(label5); add(label6); add(label7); add(label8); add(label9); label3.setBounds(70,125,80,25); label4.setBounds(70,175,80,25); label5.setBounds(70,225,80,25); label6.setBounds(70,275,80,25); label7.setBounds(70,325,80

34、,25); label8.setBounds(70,375,80,25); label9.setBounds(70,425,80,25); button1=new JButton("查询"); button1.addActionListener(this); baseBox=Box.createHorizontalBox(); list=new JComboBox(); list.addItem("请选择"); list.addItem("按商品名查询"); list.addItem("按生产商查询"); list.addItem("按商品编号查询"); label2=new JLabel("请选择查询方式"); text1=new JTextField(); text2=new JTextField(); text3=new JText

温馨提示

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

最新文档

评论

0/150

提交评论