数据库原理课程设计报告书分析.doc
文本预览下载声明
螈袀肄薆袇羃芀蒂袆肅肃莈袅螅芈莄袄羇肁蚃袃聿莆蕿袃膁腿蒅袂袁莅莁蒈羃膈芇薇肆莃薅薆螅膆蒁薆袈莁蒇薅肀膄莃薄膂肇蚂薃袂节薈薂羄肅蒄薁肇芁莀蚀螆肃芆蚀衿
数据库原理实践报告
班级 统计一班
学号 姓名 王一晰
实验目的:
在本次课程设计中,通过“超市管理信息系统”这个项目,综合运用数据库的知识,并使数据库和Java编程语言结合起来,并用可视化工具将其做成一个较为简单的项目,为以后的学习及工作打下基础。
2数据库逻辑结构:
模式:
人员表(职工编号、密码、职工姓名、职位、工资)
进货表(顺序码、条形码、进价、采购数量、采购日期、职工编号)
售货表(顺序码、条形码、数量、零售价、销售日期、职工编号、一次交易每种商品总价)
库存表(条形码、商品名称、库存量、生产厂商、商品规格、零售价)
2)E-R图:
总体功能图:
5、各功能模块详细设计
用MySQL可视化工具分别创建 雇员表(employee)、进货表(in_goods)、售货表(sale)、库存表(storage)四张表,并建立各种约束条件。
表中的内容如下:
雇员表(employee):
进货表(in_goods):
售货表(sale):
库存表(storage):
用MySQL的Dos窗口进入,输入密然后连接数据库,所用的SQL语句为use supermarket,最后用insert 语句向雇员表中插入数据信息,例如:insert into employee values(‘1’,’aaaa’,’administrator’,5000,’123456’); 其中,job只能是administrator(管理员)、saler(售货员)、buyer(采购员);
登陆界面模块
在这个模块中,主要有两个操作:“登陆”和“退出”。
“登陆”主要是将输入的编号、密码和数据库中的数据进行校验,如果数据库中存在则允许登陆,否则不能登陆。主要代码如下:
q.initSQLLink(null, null, null);
q.setRs(q.getStmt().executeQuery(select * from employee));
while(q.getRs().next()){ if(jTextField_id.getText().equals(q.getRs().getString(eid))
pwd.equals(q.getRs().getString(pwd))){
setVisible(false); if(q.getRs().getString(job).equals(saler)){
JFrame_saler jf_s = new JFrame_saler(); jf_s.setLog_eid(jTextField_id.getText());
}else if(q.getRs().getString(job).equals(buyer)){ NewJFrame_buyer njb = new NewJFrame_buyer(); njb.setLog_eid(jTextField_id.getText());
}else if(q.getRs().getString(job).equals(administrator)){ NewJFrame_adm nja = new NewJFrame_adm(); nja.setLog_eid(jTextField_id.getText());
}
dispose();//关闭本窗口
System.gc();//建议垃圾回收机制回收本窗口
flag = false;
}
}
if(flag){
JOptionPane.showMessageDialog(null, 您输入的编号与密码有误,请您重新输入!);
jTextField_id.setText();
jTextField_password.setText();
flag = true;
}
在这个模块中,销售人员主要有两个操作,即“销售商品”和“取消交易”。“销售商品”分两步进行:
先将需要销售的商品添加到jtable表中。首先输入条形码,如果数据库中不存在此商品,则提示“没有此商品,请重新输入!”;否则,敲击“Enter”键,商品的信息会自动显示在各jTextField文本框中。再点击“添加”,商品添加到jtable表中,如果库存不足,则还会有相关提示。关于此部分功能的代码如下:
while(q.getRs().next())
{
int num = q.
显示全部