ImageVerifierCode 换一换
格式:DOCX , 页数:23 ,大小:1.36MB ,
资源ID:4973018      下载积分:3 金币
快捷下载
登录下载
邮箱/手机:
温馨提示:
快捷下载时,用户名和密码都是您填写的邮箱或者手机号,方便查询和重复下载(系统自动生成)。 如填写123,账号就是123,密码也是123。
特别说明:
请自助下载,系统不会自动发送文件的哦; 如果您已付费,想二次下载,请登录后访问:我的下载记录
支付方式: 支付宝    微信支付   
验证码:   换一换

加入VIP,免费下载
 

温馨提示:由于个人手机设置不同,如果发现不能下载,请复制以下地址【https://www.bdocx.com/down/4973018.html】到电脑端继续下载(重复下载不扣费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录   QQ登录  

下载须知

1: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
2: 试题试卷类文档,如果标题没有明确说明有答案则都视为没有答案,请知晓。
3: 文件的所有权益归上传用户所有。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

本文(数据库课程设计报告.docx)为本站会员(b****3)主动上传,冰豆网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知冰豆网(发送邮件至service@bdocx.com或直接QQ联系客服),我们立即给予删除!

数据库课程设计报告.docx

1、数据库课程设计报告“数据库系统”课程设计报告前言:本次课程设计由小组完成。内容分三个模块,包括数据库设计模块、管理员窗口设计模块、客户窗口设计模块,分别由周鑫、朱关兵、安鹏飞完成。开发平台:数据库设计使用SQl server , 代码编写使用VS2010窗口应用程序,使用语言为C#在做课程设计时,时间确实比较紧张所以在需求分析方面想的不是非常周到,做用户需求时考虑到我们作为消费者之前购买图书的流程是怎样的,以及参考自己在学校图书馆借书的经历来进行用户需求分析,在概念结构设计方面确实有很大欠缺,在验收课程设计时,胡老师指出的一些问题以及给予的建设性意见让我感觉到这次课程设计需要完善的地方还是蛮多

2、的,接下来我从 方案设计过程、方案实现过程、方案后期改进三个大的方面来阐述我对这次课程设计的认识第1章 方案的设计过程1.1 小型电子商务管理系统的需求分析之我承担部分随着互联网的普及,网上购物已经成了大家很重要的消费方式。由此购物网站逐渐发展起来,当然很多人也会选择通过在线方式来购买图书,我们做的小型电子商务数据管理是从卖方角度去设计的,在设计过程中充分考虑供求关系的处理,优化交易双方的操作,达到我们能力水平范围内的最佳水平。 1.2 系统的功能之客户端1)理论上系统的各种图书可以供客户查询,订购。2)理论上能对图书进行分类查询,按关键字进行查询。3)客户可以再系统内进行注册并登陆系统,客户

3、信息以表的形式存储在数据库中。4)客户下订单后能够更新相关图书的数量,并且客户能查询到自己的订单查看详情。5)对于已注册客户,要保护他们的私人信息包括客户的联系电话、地址等不被泄露,涉及到安全性。6)理论上,客户能一次购买不同种类的不同数量的图书,而订单可以是一个,并且用户能对订单进行修改或取消。1.3数据库设计(1) 概念结构设计根据上述需求,找出的实体及实体之间的联系如下: 订单实体客户实体发货实体E-R图(2)逻辑结构设计根据上述E-R模型,将之转换为关系模式集: 订单(订单号、客户代码、图书编号、数量、价格、付款方式、付款标志)外键:客户代号、图书编号客户(客户代码、姓名、密码、地址、

4、电子邮件、邮编、联系电话)发货(订单号、发货方式、发货日期) 外键:订单号订购(订单号、图书编号、数量、总价) 外键:订单号,图书编号(3)数据库表结构设计根据上述关系模式集和实际情况,设计数据库物理结构如下所述表2.1类别表(Type)字段名类型长度说明TnoChar2类别号,主键,索引Tnamevarchar20类别名,非空,索引表2.2出版商表(pblisher)字段名类型长度说明pbsnoChar8出版商代号,主键,索引pbsnamevarchar40出版商名称,非空pbsaddvarchar40地址,非空pbsphonevarchar20电话,非空pbspostcodevarchar

5、10邮编,非空pbscontactvarchar10联系人,非空表2.3图书表(pblisher)字段名类型长度说明bnoChar4图书编号,主键,索引bnamevarchar100图书名称,非空,索引TnoChar2类别号,外键,非空pageint页数,非空,大于0priceMoney单价,非空,大于等于0quantityint数量,非空,大于等于0pbsnochar8出版商代号,外键,非空editionvarchar10版次,非空first_authorvarchar20第一作者,非空date_of_publishdate出版日期,非空descriptionvarchar1000内容简介,

6、非空表2.4客户表(client)字段名类型长度说明Cnochar8客户代码,主键,索引Cnamevarchar10姓名,非空Cpassvarchar16密码,非空Caddvarchar40地址,非空Cmailvarchar20电子邮件,非空Cpostcodevarchar10邮编,非空Cphonevarchar20联系电话,非空表2.5订单表(border)字段名类型长度说明Onochar8订单号,主键,索引Cnochar8客户代码,外键,非空bnochar4图书编号,外键,非空quantity int数量,非空pricemoney总价,非空paytype varchar 10付款方式,非空

7、,(货到付款,网上支付)Cstatusvarchar10付款标志,非空,(未付款,已付款)表2.6发货表(bsend)字段名类型长度说明Onochar8订单号,主键,外键,索引Stypevarhar20发货方式,非空,(中通,圆通)Sdatedatetime发货日期第2章 方案实现过程之客户端(1) 系统客户登陆窗口的设计过程用户登录窗体主要功能有三:用户注册、用户登录、以及管理员入口。在设计时,利用VS的C#开发环境,增加多个label和button、textbox控件。效果图如下源代码using System;using System.Collections.Generic;using S

8、ystem.ComponentModel;using System.Data;using System.Drawing;using System.Linq;using System.Text;using System.Windows.Forms;using System.Data.SqlClient;namespace 数据库 public partial class 用户登录 : Form public 用户登录() InitializeComponent(); private void button3_Click(object sender, EventArgs e) 登陆 lvFrm =

9、 new 登陆(); lvFrm.Show(); Hide(); SqlConnection conn; public static string userID; public static string userpsd; private void btnLogin_Click(object sender, EventArgs e) conn = new SqlConnection(Data Source=(local);Initial Catalog=bookstore;Integrated Security=True); conn.Open();/打开数据库 SqlCommand cmd

10、= new SqlCommand(); string strsql = select * from Customer where Cno= + txtUserName.Text + and Cpass= + txtUserPwd.Text; cmd = new SqlCommand(strsql, conn); SqlDataReader rd = cmd.ExecuteReader(); if (rd.HasRows) /* Buy lvFrm = new Buy(); lvFrm.Show(); Hide(); */ 用户购买 frm2 = new 用户购买(); Hide(); int

11、a; int.TryParse(txtUserName.Text, out a); frm2.STR = a.ToString(); frm2.ShowDialog(); else label4.Text = 请正确输入用户名与密码; txtUserPwd.Text = null; conn.Close(); private void button2_Click(object sender, EventArgs e) 注册 lvFrm = new 注册(); lvFrm.Show(); Hide(); private void 用户登录_Load(object sender, EventArg

12、s e) (2) 用户登录系统后的购买界面的设计:考虑到我和管理员的管理系统要合并为同一个完整系统,我在编写用户购买界面时减少了窗体的数量,但是主体功能都在。此处用到了窗体传值技术、DataGridView控件展示数据库的图书表,订单表。下图展示了用户登录后的图书查询、图书购买、订单形成、订单查询的操作过程 用户登录后的界面用户查询所有图书的界面以上三图展示用户提交订单并成功过程用户查询订单界面源代码:using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using

13、 System.Drawing;using System.Linq;using System.Text;using System.Windows.Forms;using System.Data.SqlClient;namespace 数据库 public partial class 用户购买 : Form public 用户购买() InitializeComponent(); private string str;/定义的私有变量 public string STR/为窗体Form2定义的属性 get /读 return str; set/写 str = value; private voi

14、d label5_Click(object sender, EventArgs e) private void label1_Click(object sender, EventArgs e) SqlConnection conn; private void btnselect_Click(object sender, EventArgs e) conn = new SqlConnection(Data Source=(local);Initial Catalog=bookstore;Integrated Security=True); conn.Open(); SqlCommand cmd

15、= new SqlCommand(select * from books, conn); SqlDataAdapter sda = new SqlDataAdapter(); sda.SelectCommand = cmd; DataSet ds = new DataSet(); sda.Fill(ds, books); dataGridView1.DataSource = ds.Tables0; dataGridView1.Columnsbno.HeaderText = 编号; dataGridView1.Columnsbname.HeaderText = 名称; dataGridView1

16、.Columnstno.HeaderText = 类别号; dataGridView1.Columnspage.HeaderText = 页数; dataGridView1.Columnsprice.HeaderText = 单价; dataGridView1.Columnsquantity.HeaderText = 数量; dataGridView1.Columnspbsno.HeaderText = 出版社代号; dataGridView1.Columnsedition.HeaderText = 版次; dataGridView1.Columnsfirst_author.HeaderTex

17、t = 第一作者; dataGridView1.Columnsdate_of_publish.HeaderText = 出版年月; dataGridView1.Columnsdescription.HeaderText = 内容简介; conn.Close(); private void dataGridView1_CellClick(object sender, DataGridViewCellEventArgs e) txtID.Text = dataGridView1.SelectedCells0.Value.ToString(); txtPrice.Text = dataGridVie

18、w1.SelectedCells4.Value.ToString(); private void Calc_Click(object sender, EventArgs e) float a, b, sum; if (float.TryParse(txtPrice.Text, out a) & float.TryParse(txtBquanity.Text, out b)/关于TryParse的使用方法,见补充知识。 sum = a * b; txtjin.Text = sum.ToString(); txtjin.Show(); else MessageBox.Show(计算出错!); pr

19、ivate void button1_Click(object sender, EventArgs e) Random rad = new Random();/实例化随机数产生器rad; int value = rad.Next(1000, 10000);/用rad生成大于等于1000,小于等于9999的随机数; txtRandom.Text = value.ToString(); /用label控件label1显示产生的四位随机数; SqlConnection conn1; SqlCommand cmd; private void btnSubmit_Click(object sender,

20、 EventArgs e) conn1 = new SqlConnection(Data Source=(local);Initial Catalog=bookstore;Integrated Security=True); conn1.Open(); SqlCommand cmd = new SqlCommand(); cmd.Connection = conn1; cmd.CommandText = insert into border(Ono,Cno,bno,quantity,price,paytype,cstatus) values( + txtRandom.Text.Trim() +

21、 , + txtCID.Text.Trim() + , + txtID.Text + , + txtBquanity.Text.Trim() + , + txtjin.Text.Trim() + , + + txtFang.Text.Trim() + + , + this.la.Text.Trim().ToString() + ); cmd.CommandType = CommandType.Text; cmd.ExecuteNonQuery(); MessageBox.Show(提交成功!); cmd.CommandText = update books set quantity=quant

22、ity- + txtBquanity.Text.Trim() + where bno= + txtID.Text.Trim(); cmd.CommandType = CommandType.Text; cmd.ExecuteNonQuery(); cmd.CommandText = insert into bsend(Ono,Stype,Sdate) values( + txtRandom.Text + , + this.la.Text.Trim().ToString() + , + this.la.Text.Trim().ToString() + ); cmd.CommandType = C

23、ommandType.Text; cmd.ExecuteNonQuery(); btnselect.PerformClick(); private void btncheck_Click(object sender, EventArgs e) conn = new SqlConnection(Data Source=(local);Initial Catalog=bookstore;Integrated Security=True); conn.Open(); SqlCommand cmd = new SqlCommand(select * from border where Cno = +

24、this.txtCID.Text, conn); SqlDataAdapter sda = new SqlDataAdapter(); sda.SelectCommand = cmd; DataSet ds = new DataSet(); sda.Fill(ds, broder); dataGridView2.DataSource = ds.Tables0; dataGridView2.ColumnsOno.HeaderText = 订单编号; dataGridView2.ColumnsCno.HeaderText = 客户编号; dataGridView2.Columnsbno.Heade

25、rText = 图书编号; dataGridView2.Columnsquantity.HeaderText = 数量; dataGridView2.Columnsprice.HeaderText = 金额; dataGridView2.Columnspaytype.HeaderText = 付款方式; dataGridView2.ColumnsCstatus.HeaderText = 订单状态; conn.Close(); private void dataGridView1_CellContentClick(object sender, DataGridViewCellEventArgs

26、e) private void label3_Click(object sender, EventArgs e) private void txtBquanity_TextChanged(object sender, EventArgs e) private void label4_Click(object sender, EventArgs e) private void label9_Click(object sender, EventArgs e) private void button2_Click(object sender, EventArgs e) 用户登录 lvFrm = ne

27、w 用户登录(); lvFrm.Show(); Hide(); private void comboBox1_SelectedIndexChanged(object sender, EventArgs e) private void Buy_Load(object sender, EventArgs e) txtFang.DropDownStyle = ComboBoxStyle.DropDownList; txtFang.Items.Add(货到付款); txtFang.Items.Add(网上支付); txtCID.Text = str; private void txtPrice_Tex

28、tChanged(object sender, EventArgs e) private void txtjin_TextChanged(object sender, EventArgs e) (3) 用户注册用户注册后,数据自动插入数据库中的Customer表中,并在界面处设计了返回登陆窗的button下图展示用户注册的过程源代码;using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.Linq;using System.Text;using System.Windows.Forms;using System.Data.SqlClient;namespace 数据库 public partial class 注册 : Form public 注册() InitializeComponent(); private void FormCZ_Load(o

copyright@ 2008-2022 冰豆网网站版权所有

经营许可证编号:鄂ICP备2022015515号-1