收藏 分销(赏)

数据库课程设计书籍销售管理系统.doc

上传人:精**** 文档编号:2228448 上传时间:2024-05-23 格式:DOC 页数:37 大小:1.02MB
下载 相关 举报
数据库课程设计书籍销售管理系统.doc_第1页
第1页 / 共37页
数据库课程设计书籍销售管理系统.doc_第2页
第2页 / 共37页
数据库课程设计书籍销售管理系统.doc_第3页
第3页 / 共37页
数据库课程设计书籍销售管理系统.doc_第4页
第4页 / 共37页
数据库课程设计书籍销售管理系统.doc_第5页
第5页 / 共37页
点击查看更多>>
资源描述

1、理工大学2013级数据库课程设计说明书理工大学工学院数据库课程设计报告题目: 书籍销售管理系统 专业: 计算机科学与技术 年级: 姓名: 学号: 成绩: 评语: 目 录第一章 概述11.1 系统需求11.2 功能分析11.3 系统环境需求1第二章 系统设计22.1 功能模块设计22.2 逻辑结构设计22.3 概念结构设计42.4 界面、代码设计62.4.1 用户登录界面的实现(杨炼)62.4.2 主界面的设计(舒恒)72.4.3 系统管理的设计(何在逸)81、添加账号102、修改管理102.4.4 书籍信息管理界面的设计(钟鹏)121、基本资料信息132、图书销售信息133、入库管理信息174

2、、订单管理信息192.4.5 客户信息管理界面的设计(叶丽艳)222.4.6 关于界面的设计27第三章 结论32理工大学2012级数据库课程设计说明书第一章 概述1.1 系统需求传统的书籍销售管理方法,都是通过人工统计和计算的管理方式进行的。这样的管理方法不但费时费力,也容易产生计算上的错误和疏漏;计算机技术的全面普及,打破了书店管理的传统管理方法,提高了管理效率的同时,克服了传统管理方法中易产生的问题,使管理员能够有序的、全面的对图书销售和库存进行管理。可以快速完成任务,如图书资料、图书销售、入库信息、订单信息、客户信息等功能,迅速准确地对已售图书和剩余库存进行统计工作,提高了书店的管理效率

3、和准确性。1.2 功能分析用户登录:为保护安全,设置了开启密码,如用户名、密码。系统管理:管理用户,如添加账号、修改(密码)管理、注销、退出。图书仓库管理:记录仓库的信息,如图书基本资料、图书入库管理。图书销售管理:记录销售信息,如客户订单、订单管理、图书销售管理。图书基本资料:记录书籍的相关信息,如图书号、书籍名称、作者、出版社等。图书入库管理:记录入库的相关信息,如图书号、数量、单价、入库日期等。客户信息管理:登记客户购买书籍信息,如添加、修改、删除、更新用户,查询用户等订单信息管理:查询订单书籍的信息,如创建、修改、删除、更新订单,查询订单等1.3 系统环境需求本系统的前端开发工具是Mi

4、crosoft Visual Studio 2015,后台数据库引擎选用数据库软件 Access 2013。第二章 系统设计2.1 功能模块设计画出如图2.1所示的系统的整体结构图书籍销售管理系统添加用户系统管理图书仓库管理图书销售管理退出注销修改管理图书入库管理图书基本资料图书销售管理订单管理客户管理图2.1.1系统的整体结构图2.2 逻辑结构设计系统数据库名称为书籍销售管理系统,数据库中包括:用户密码表、基本资料表、图书销售表、入库管理表、订书信息表、客户信息表。下面列出各个表的数据结构如表2.2-1表2.2-6所示。表2.2-1 用户密码表的数据结构表2.2-2 基本资料表的数据结构表2

5、.2-3 图书销售表的数据结构表2.2-4 入库管理表的数据结构表2.2-5 订单信息表的数据结构表2.2-6 客户信息表的数据结构下面给各个表的数据如图2.2.7图2.2.12所示。图2.2-7 用户密码的数据图2.2-8 基本资料的数据图2.2-9 图书销售的数据图2.2-10 入库管理的数据图2.2-11 订单信息的数据图2.2-12 客户信息的数据2.3 概念结构设计将逻辑结构设计的逻辑结构转化成概念结构,把表结构转化成了E-R图和关系图。图2.3-1 书籍销售管理系统的E-R图图2.3-2 书籍销售管理系统的关系图2.4 界面、代码设计2.4.1 用户登录界面的实现(杨炼)用户登录界

6、面主要完成对用户名及密码的输入如图2.4.1所示(用户名为123,密码为123)。由该系统正确输入用户名和密码后方可成功登录,系统转至应用程序主界面,否则显示“请输入用户名和密码”的提示对话框。输入用户名和密码之后可按回车键实现登录。 图2.4.1 用户登录界面用户登录的代码如下:private void button1_Click(object sender, EventArgs e) String CString = Provider=Microsoft.Jet.OLEDB.4.0;Data Source=书籍销售管理.MDB; OleDbConnection MyCon = new Ol

7、eDbConnection(CString); MyCon.Open(); OleDbCommand MyCom = new OleDbCommand(); MyCom.Connection = MyCon; /以上代码连接并打开数据库 MyCom.CommandText = Select * from 用户密码 where 用户名= + + textBox1.Text + ; /根据登录界面输入的信息去查询数据库内容 OleDbDataReader QQ; QQ = MyCom.ExecuteReader(); if (QQ.Read() = true) /若用户名存在,则为“true”,否

8、则为“false” if (QQ密码.ToString() = textBox2.Text) MessageBox.Show(登录成功!欢迎使用系统, 用户登录); this.Hide(); 书籍销售管理系统 书籍销售管理系统 = new 书籍销售管理系统(); 书籍销售管理系统.Show(); else MessageBox.Show(密码错误!请重新输入, 密码错误); textBox2.Focus(); else MessageBox.Show(用户名不存在!, 提示); textBox1.Focus(); private void button2_Click(object sender

9、, EventArgs e) MessageBox.Show(谢谢!欢迎下次使用!, 退出); textBox1.Focus(); this.Close();2.4.2 主界面的设计(舒恒)主界面设计是为了显示本系统所有的功能菜单项,并且把用户经常用到的功能设计成菜单项,以方便操作,然后当用户单击相应的菜单项或菜单按钮时,打开相应的模块窗口,如图2.4.2-12.4.2-2所示。图2.4.2-1 主菜单界面 图2.4.2-2 主菜单的窗口界面主菜单的代码如下:private void 添加账号ToolStripMenuItem_Click(object sender, EventArgs e)

10、 添加账号 添加账号 = new 添加账号(); 添加账号.Show(); private void 修改管理ToolStripMenuItem_Click(object sender, EventArgs e) 修改管理 修改管理 = new 修改管理(); 修改管理.Show(); private void 注销ToolStripMenuItem_Click(object sender, EventArgs e) 注销 注销 = new 注销(); 注销.Show(); private void 退出ToolStripMenuItem_Click(object sender, EventA

11、rgs e) MessageBox.Show(谢谢!欢迎下次使用!, 退出); this.Close(); private void 图书基本资料ToolStripMenuItem_Click(object sender, EventArgs e) 图书基本资料 图书基本资料 = new 图书基本资料(); 图书基本资料.Show(); private void 图书入库管理ToolStripMenuItem_Click(object sender, EventArgs e) 图书入库管理 图书入库管理 = new 图书入库管理(); 图书入库管理.Show(); private void 客

12、户管理ToolStripMenuItem_Click(object sender, EventArgs e) 客户管理 客户管理 = new 客户管理(); 客户管理.Show(); private void 订单管理ToolStripMenuItem_Click(object sender, EventArgs e) 订单管理 订单管理 = new 订单管理(); 订单管理.Show(); private void 图书销售管理ToolStripMenuItem1_Click(object sender, EventArgs e) 图书销售管理 图书销售管理 = new 图书销售管理();

13、图书销售管理.Show(); private void 关于ToolStripMenuItem_Click(object sender, EventArgs e) 关于 关于 = new 关于(); 关于.Show();2.4.3 系统管理的设计(何在逸)1、添加用户设计想要添加用户也可以选择【系统管理】【添加用户】功能如图2.4.3-1所示。如果输入两次密码不一致的话,系统就会显示“两次密码输入不一致”的警告对话框。图2.4.3-1 添加用户界面 添加用户的代码如下:private void button1_Click(object sender, EventArgs e) string C

14、String = Provider=microsoft.Jet.OLEDB.4.0;Data Source=书籍销售管理.MDB; OleDbConnection MyCon = new OleDbConnection(CString); if (textBox1.Text.Trim() = | textBox2.Text.Trim() = | textBox3.Text.Trim() = ) MessageBox.Show(请输入完整信息!, 提示); else if (textBox2.Text.Trim() != textBox3.Text.Trim() MessageBox.Show(

15、两次密码输入不一致!, 警告); else MyCon.Open(); string sql = select * from 用户密码 where 用户名 = + textBox1.Text.Trim() + ; OleDbCommand cmd = new OleDbCommand(, MyCon); cmd.CommandText = sql; if (null = cmd.ExecuteScalar() sql = insert into 用户密码(用户名,密码) values ( + textBox1.Text.Trim() + , + textBox2.Text.Trim() + )

16、; cmd.CommandText = sql; cmd.ExecuteNonQuery(); MessageBox.Show(恭喜您!添加成功!, 提示); this.Close(); else MessageBox.Show(用户名已存在!请重新输入其他的用户名!, 提示); MyCon.Close(); 2、修改密码设计想要修改密码也可以选择【系统管理】【修改密码】功能如图2.4.3-2所示。图2.4.3-2 修改密码界面修改密码的代码如下:private void button1_Click(object sender, EventArgs e) if (textBox1.Text.T

17、rim() = | textBox2.Text.Trim() = | textBox3.Text.Trim() = | textBox4.Text.Trim() = ) MessageBox.Show(请填写完整信息!, 提示); else string CString = Provider=microsoft.Jet.OLEDB.4.0;Data Source=书籍销售管理.MDB; OleDbConnection MyCon = new OleDbConnection(CString); MyCon.Open(); OleDbCommand cmd = new OleDbCommand(,

18、 MyCon); string Sql = select * from 用户密码 where 用户名 = + textBox1.Text.Trim() + and 密码 = + textBox2.Text.Trim() + ; cmd.CommandText = Sql; if (null != cmd.ExecuteScalar() if (textBox3.Text.Trim() != textBox4.Text.Trim() MessageBox.Show(两次密码输入不一致!, 警告); else Sql = update 用户密码 set 密码= + textBox3.Text.Tr

19、im() + where 用户名= + textBox1.Text.Trim() + ; cmd.CommandText = Sql; cmd.ExecuteNonQuery(); MessageBox.Show(密码修改成功!, 提示); this.Close(); else MessageBox.Show(密码错误!请重新输入密码!, 提示); MyCon.Close(); 2.4.4 书籍信息管理界面的设计(钟鹏)1、基本资料信息选择【基本资料管理】【基本资料】命令可查看所有书籍的信息界面如图2.4.4-1所示。图2.4.4-1基本资料界面基本资料的代码如下:private void 图

20、书基本资料_Load(object sender, EventArgs e) / TODO: 这行代码将数据加载到表“基本资料DataSet.基本资料”中。您可以根据需要移动或删除它。 this.基本资料TableAdapter.Fill(this.基本资料DataSet.基本资料); / 禁止表格显示新增行 dataGridView1.AllowUserToAddRows = false; / 禁止用户直接编辑表格 dataGridView1.ReadOnly = true; private void dataGridView1_CellEnter(object sender, DataGr

21、idViewCellEventArgs e) textBox1.Text = dataGridView1.Rowse.RowIndex.Cells0.Value.ToString(); textBox2.Text = dataGridView1.Rowse.RowIndex.Cells1.Value.ToString(); textBox3.Text = dataGridView1.Rowse.RowIndex.Cells2.Value.ToString(); textBox4.Text = dataGridView1.Rowse.RowIndex.Cells3.Value.ToString(

22、); textBox5.Text = dataGridView1.Rowse.RowIndex.Cells4.Value.ToString(); textBox6.Text = dataGridView1.Rowse.RowIndex.Cells5.Value.ToString(); private bool CheckIfBookNumExist(string bookNum) if (基本资料TableAdapter.Connection.State != ConnectionState.Open) 基本资料TableAdapter.Connection.Open(); string Sq

23、lstr; Sqlstr = select * from 基本资料 where 图书号 = + bookNum; OleDbCommand cmd = new OleDbCommand(); cmd.Connection = 基本资料TableAdapter.Connection; cmd.CommandType = CommandType.Text; cmd.CommandText = Sqlstr; OleDbDataAdapter da = new OleDbDataAdapter(cmd); DataSet ds = new DataSet(); da.Fill(ds); return

24、 ds.Tables0.Rows.Count 0; private void 添加button_Click(object sender, EventArgs e) if (CheckIfBookNumExist(textBox1.Text) MessageBox.Show(图书号已经存在,不能添加!); return; / 判断连接是否打开,若未打开则手工打开 if (基本资料TableAdapter.Connection.State != ConnectionState.Open) 基本资料TableAdapter.Connection.Open(); string Sqlstr; Sqls

25、tr = insert into 基本资料 values( + textBox1.Text + , + textBox2.Text + , + textBox3.Text + , + textBox4.Text + , + textBox5.Text + , + textBox6.Text + ); 基本资料TableAdapter.Adapter.InsertCommand.CommandText = Sqlstr; 基本资料TableAdapter.Adapter.InsertCommand.CommandType = CommandType.Text; 基本资料TableAdapter.

26、Adapter.InsertCommand.ExecuteNonQuery(); / 执行命令 基本资料TableAdapter.Fill(基本资料DataSet.基本资料); private void 清除button_Click(object sender, EventArgs e) textBox1.Text = textBox2.Text = textBox3.Text = textBox4.Text = textBox5.Text = textBox6.Text = ; private void 更新button_Click(object sender, EventArgs e) /

27、 判断连接是否打开,若未打开则手工打开 if (基本资料TableAdapter.Connection.State != ConnectionState.Open) 基本资料TableAdapter.Connection.Open(); string Sqlstr; Sqlstr = select * from 基本资料; 基本资料TableAdapter.Adapter.SelectCommand.CommandText = Sqlstr; 基本资料TableAdapter.Adapter.SelectCommand.CommandType = CommandType.Text; 基本资料T

28、ableAdapter.Adapter.SelectCommand.ExecuteNonQuery(); / 执行命令 基本资料TableAdapter.Fill(基本资料DataSet.基本资料); private void 查询button_Click(object sender, EventArgs e) string Sqlstr; Sqlstr = select * from 基本资料 where 图书号 = + textBox1.Text; 基本资料TableAdapter.Adapter.SelectCommand.CommandText = Sqlstr; 基本资料TableA

29、dapter.Adapter.SelectCommand.CommandType = CommandType.Text; 清除button_Click(null, null); / 显示前进行手工清除 基本资料TableAdapter.Fill(基本资料DataSet.基本资料); private void 删除button_Click(object sender, EventArgs e) / 判断连接是否打开,若未打开则手工打开 if (基本资料TableAdapter.Connection.State != ConnectionState.Open) 基本资料TableAdapter.C

30、onnection.Open(); string Sqlstr; Sqlstr = delete from 基本资料 where 图书号 = + textBox1.Text; 基本资料TableAdapter.Adapter.DeleteCommand.CommandText = Sqlstr; 基本资料TableAdapter.Adapter.DeleteCommand.CommandType = CommandType.Text; 基本资料TableAdapter.Adapter.DeleteCommand.ExecuteNonQuery(); / 执行命令 基本资料TableAdapte

31、r.Fill(基本资料DataSet.基本资料); 2、图书销售信息选择【图书销售管理】【图书销售】命令可对书籍信息进行图书销售(如图2.4.4-2所示),如条形码、图书号、图书名称、季度、单价、数量。图2.4.4-2 图书销售界面图书销售的代码如下:private void 图书销售管理_Load(object sender, EventArgs e) / TODO: 这行代码将数据加载到表“图书销售DataSet1.图书销售”中。您可以根据需要移动或删除它。 this.图书销售TableAdapter.Fill(this.图书销售DataSet1.图书销售); / 禁止表格显示新增行 da

32、taGridView1.AllowUserToAddRows = false; / 禁止用户直接编辑表格 dataGridView1.ReadOnly = true; private void dataGridView1_CellEnter(object sender, DataGridViewCellEventArgs e) textBox1.Text = dataGridView1.Rowse.RowIndex.Cells0.Value.ToString(); textBox2.Text = dataGridView1.Rowse.RowIndex.Cells1.Value.ToStrin

33、g(); textBox3.Text = dataGridView1.Rowse.RowIndex.Cells2.Value.ToString(); textBox4.Text = dataGridView1.Rowse.RowIndex.Cells3.Value.ToString(); textBox5.Text = dataGridView1.Rowse.RowIndex.Cells4.Value.ToString(); textBox6.Text = dataGridView1.Rowse.RowIndex.Cells5.Value.ToString(); private void 结束

34、销售button_Click(object sender, EventArgs e) double a, b, c, sum; a = Convert.ToSingle(数量textBox.Text); b = Convert.ToSingle(单价textBox.Text); c = Convert.ToSingle(textBox6.Text); if (a = c) sum = a * b; 结果计算textBox.Text = Convert.ToString(sum); else MessageBox.Show(不要超过数量!请重新输入数量, 提示); private void 输入单价button_Click(object sender, Even

展开阅读全文
部分上传会员的收益排行 01、路***(¥15400+),02、曲****(¥15300+),
03、wei****016(¥13200+),04、大***流(¥12600+),
05、Fis****915(¥4200+),06、h****i(¥4100+),
07、Q**(¥3400+),08、自******点(¥2400+),
09、h*****x(¥1400+),10、c****e(¥1100+),
11、be*****ha(¥800+),12、13********8(¥800+)。
相似文档                                   自信AI助手自信AI助手
搜索标签

当前位置:首页 > 通信科技 > 数据库/数据算法

移动网页_全站_页脚广告1

关于我们      便捷服务       自信AI       AI导航        获赠5币

©2010-2025 宁波自信网络信息技术有限公司  版权所有

客服电话:4008-655-100  投诉/维权电话:4009-655-100

gongan.png浙公网安备33021202000488号   

icp.png浙ICP备2021020529号-1  |  浙B2-20240490  

关注我们 :gzh.png    weibo.png    LOFTER.png 

客服