1、数据库 小型餐饮管理系统苏州科技学院电子与信息工程学院数据库原理课程设计报告学 号 1430107130 姓 名 郑宏艳 班 级 1421 日 期 2015年12月 一、 任务及要求: 小型餐饮管理系统主要功能:餐饮消费查询、餐饮消费更新、餐饮消费统计、餐饮消费会员管理二、 数据库设计:(要求叙述数据库设计的过程,画出E-R图,列出数据库中的表名称及结构,并说明表间的关系)(1) 图: (2)实体模型:我的报告总共两个表,第一个表是会员表(会员id,会员密码,会员姓名,会员电话,收款金额,会员性别等),第二个表是菜单管理表(菜单名称,菜单价格,食物照片,配料,功效) ruser(会员表)序号字
2、段名称字段描述字段类型长度备注1User_id会员账号Nvarchar r20不允许空2Passcode会员密码Nvarchar20不允许空3Name会员姓名Nvarchar20不允许空4Phone会员电话Nvarchar20不允许空5Money收款金额Money10不允许空6Sex会员性别Nvarchar4允许空food (食谱表)序号字段名称字段描述字段类型长度备注1Name食谱名称Nvarchar20不允许空2Price价格Nvarchar10不允许空3Photo食物照片Nvarchar100允许空4Formula配料Nvarchar50不允许空5Effect功效Nvarchar50不允
3、许空三、实现的功能及相应的界面和代码:1.连接数据库的实现(1)首先实现数据库的连接,代码如下所示: SqlConnection conn = new SqlConnection(); conn.ConnectionString = data source = RONGER-PCSQLEXPRESS;initial Catalog =小型餐馆;user id =123;password =123; conn.Open(); conn.Close(); conn.Dispose();(2)链接数据库,后台取的数据库菜单列表的所有数据,在页面前台进行展示视图展现:代码的实现: protected
4、void Button_Click(object sender, EventArgs e) SqlConnection conn = new SqlConnection(); conn.ConnectionString = data source =W530SQLEXPRESS;initial Catalog=小型餐馆;user id =123;password = 123 ; conn.Open(); TextBox9.Text = 连接成功!; string yy =”select * from Menu” SqlCommand sqlCmd1 = new SqlCommand(yy, c
5、onn); sqlCmd1.ExecuteNonQuery(); conn.Close(); conn.Dispose(); 2.用户登录界面以及用户信息添加删除修改界面(1) 代码的实现Imports System.DataImports System.Data.SqlClientPublic Class Form2 Private Sub Button_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button4.Click Me.Close() End Sub Private Sub B
6、utton_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click If TextBox3.Text.Trim = Or TextBox4.Text.Trim = Then MsgBox(请填写用户名和密码, MsgBoxStyle.Exclamation) Exit Sub End If connectSQL() Dim conn As SqlConnection = New SqlConnection(Server=(local);uid=sa;pwd=sa;Databa
7、se=D:新建文 件夹EATFOODS.MDF) conn.Open() Dim str As String str = select * from ruser where user_id = + TextBox3.Text + and passcode= + TextBox4.Text + and style= + ComboBox2.Text + Dim scom = New SqlClient.SqlCommand(str, conn) scom.CommandType = CommandType.Text Dim sexe = scom.ExecuteReader() If (sexe
8、.Read() Then Me.Visible = False MessageBox.Show(登陆成功) Else MessageBox.Show(用户名或密码不正确!, 警告) End If Me.Close() conn.Close() End SubEnd Class (2) 代码的实现 Private Sub Button_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click If (Me.TextBox10.Text And Me.TextBox11.Text
9、And Me.TextBox12.Text And Me.TextBox13.Text ) Then Dim conn As SqlConnection = New SqlConnection(Server=(local);uid=sa;pwd=sa;Database=D:新建文件夹EATFOODS.MDF) conn.Open() Dim mysql As String mysql = insert into rcustomer(name,call,passcode,id,addtime,userid) values( mysql += Me.TextBox10.Text.ToString(
10、) mysql += , mysql += Me.TextBox11.Text.ToString() mysql += , mysql += Me.TextBox12.Text.ToString() mysql += , mysql += Me.TextBox1.Text.ToString() mysql += , mysql += Me.TextBox2.Text.ToString() mysql += , mysql += Me.TextBox3.Text.ToString() mysql += ) Dim sql As SqlCommand sql = New SqlCommand(my
11、sql, conn) If Me.TextBox12.Text.ToString Me.TextBox13.Text.ToString Then MessageBox.Show(密码不一致,重新输入, 提示) Return End If If (sql.ExecuteNonQuery() 0) Then MessageBox.Show(添加成功, 提示) End If conn.Close() Else MessageBox.Show(请核对信息是否完整!, 提示) End IfEnd Sub Private Sub Button4_Click(ByVal sender As System.O
12、bject, ByVal e As System.EventArgs) Handles Button4.Click Dim conn As SqlConnection = New SqlConnection(Server=(local);uid=sa;pwd=sa;Database=D:新建文件夹EATFOODS.MDF) conn.Open() Dim mysql As String mysql = delete from ruser where name= mysql += Me.TextBox6.Text mysql += Dim sql As SqlCommand sql = New
13、SqlCommand(mysql, conn) If (sql.ExecuteNonQuery() 0) Then MessageBox.Show(删除成功, 提示) End If conn.Close() End Sub Private Sub Button2_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button2.Click If (Me.TextBox1.Text And Me.TextBox2.Text And Me.TextBox3.Text And Me.TextBox4.T
14、ext ) Then Dim conn As SqlConnection = New SqlConnection(Server=(local);uid=sa;pwd=sa;Database=D:新建文件夹EATFOODS.MDF) conn.Open() Dim mysql As String mysql = update food set name= mysql += Me.TextBox1.Text mysql += ,price= mysql += Me.TextBox2.Text mysql += ,formula= mysql += Me.TextBox3.Text mysql +=
15、 ,effect= mysql += Me.TextBox4.Text mysql += Dim sql As SqlCommand sql = New SqlCommand(mysql, conn) If (sql.ExecuteNonQuery() 0) Then MessageBox.Show(修改成功!, 提示) conn.Close() Else Try Catch ex As Exception MessageBox.Show(ex.Message) End Try End If Else MessageBox.Show(信息未填完整, 提示) End If End Sub3.从数
16、据库用户菜单表取的用户点餐信息,可以对点的菜进行更新和修改,并且有统计功能 (1)用户已点菜单更新代码 protected void Button_Click(object sender, EventArgs e) SqlConnection conn = new SqlConnection(); conn.ConnectionString = data source =W530SQLEXPRESS;initial Catalog=小型餐馆;user id =123;password =123 ; conn.Open(); TextBox9.Text = 更新成功!; string yy =
17、update UserMenu set 菜单名称=( + TextBox2.Text + ) where 会员用户=( + TextBox1.Text + ); SqlCommand sqlCmd1 = new SqlCommand(yy, conn); sqlCmd1.ExecuteNonQuery(); conn.Close(); conn.Dispose();(2)用户已点菜单删除代码 Private Sub Button_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button4.C
18、lick Dim conn As SqlConnection = New SqlConnection(Server=(local);uid=sa;pwd=sa;Database=D:新建文件夹EATFOODS.MDF) conn.Open() Dim mysql As String mysql = delete from ruser where name= mysql += Me.TextBox6.Text mysql += Dim sql As SqlCommand sql = New SqlCommand(mysql, conn) If (sql.ExecuteNonQuery() 0)
19、Then MessageBox.Show(删除成功) End If conn.Close() End Sub4. 新菜单添加功能连接数据库添加新的菜单 (1)添加菜单的代码Private Sub Button_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button3.Click Dim conn As SqlConnection = New SqlConnection(Server=(local);uid=sa;pwd=sa;Database=D:新建文件夹EATFOODS.MDF) co
20、nn.Open() Dim str As String str = DataGridView3.Rows(DataGridView3.CurrentRow.Index).Cells(0).Value Dim mysql As String mysql = insert into menu(menu_dishes,menu_price,menu_zhonglei)values(dishes,price, zhonglei) ” mysql += str Dim sql As SqlCommand sql = New SqlCommand(mysql, conn) If (sql.ExecuteN
21、onQuery() 0) Then MessageBox.Show(添加成功, ) End If DataGridView3.Rows.RemoveAt(DataGridView3.CurrentRow.Index) conn.Close() End Sub四、调试分析:(包括遇到的问题及解决办法,经验与体会等) 经过一年半的学习,我们对数据库、C#等相关知识有了一定的了解。又经过了几次的实践,我们对理论知识运用到实际练习中又有了一定的基础。 这次实践,我做的是小型餐饮管理系统,主要练习内容就是数据库和C#能够联系在一起。将做好的数据库导入窗体中,通过一些控件的功能,实现对数据库的修改、查询。
22、此次主要是对于菜单信息实现查询、更新、删除、添加的功能。 通过此次数据库的课程设计,真正达到了学与用的结合,增强了对数据库方面应用的理解,对自己今后参与开发数据库系统积累了不少经验,在实验过程中,从建立数据开始,对数据库设计理念及思想上有更高的认识,从需求分析,到概念设计和逻辑设计,E-R图的表示,数据字典的创建,懂得了不少有关数据库开发过程中的知识,在实验中建表,及其关系模式,关系代数的建立及理解,将SQL语言的查询语句用得淋漓尽致,增强了自己在数据库中应用SQL语言的灵活性,其中包括查询、删除、修改、添加,牵涉表和表之间的联系,主键与外主键的定义,约束项的设置,使逻辑更严密。实践要求中会员管理和更新这部分不怎么会,以后还得加大努力! 在实践过程中,难免会遇到问题,不过,经过仔细研究,不断尝试,一遍一遍检查、调试,并与同学讨论,问题总会一个个被攻破,被解决。
copyright@ 2008-2022 冰豆网网站版权所有
经营许可证编号:鄂ICP备2022015515号-1