在本节我们将讲述实现数据库的增、删、改、查为一体的综合性实例。我们将要创建一个菜品管理系统,具体步骤如下:
(1)新建数据库取名为FoodDB。
(2)创建菜品类型表和菜品表,见表9.5和表9.6。
表9.5 FoodTpye(菜品类型表)
表9.6 Food(菜品表)
(3)新建一个窗体应用程序项目,项目取名为“FoodSearchSys”设置窗体的IsMdiContainer属性为true,这个属性的意思是是否包含MDI窗体,通俗的讲法就是设置这个属性后能在这个窗体上显示其他窗体。在这个项目中新建如下几个窗体分别取名为AddFood.cs(添加菜品)、AddFoodType.cs(添加菜品类型)、FoodManage.cs(菜品管理)、main.cs(主窗体,启动窗体)。
(4)主窗体上添加一个菜单项“菜品管理”,如图9.4所示。
图9.4 添加菜单项
然后分别为菜单子项“添加菜品”“管理菜品”和“添加菜品类型”按钮添加事件。为菜单项按钮添加事件,如图9.5所示。
图9.5 给菜单项按钮添加事件
主窗体代码如下:
(5)给AddFood窗体添加控件,如图9.6所示。
图9.6 AddFood窗体控件示例图
然后给“保存”按钮添加一个事件。程序代码如下:
(6)给FoodManage窗体添加文本、标签、组合框、DataGridView、按钮等控件,如图9.7所示。
图9.7 FoodManage窗体控件及布局图
然后分别给这几个按钮添加事件。对DataGridView添加一个“CellDoubleClick”事件,事件在鼠标双击DataGridView的一个单元时触发。
主要程序代码如下:
(7)设计AddFoodType窗体,如图9.8所示。
图9.8 AddFoodType窗体设计视图
程序实现代码如下:
运行程序,添加菜品类型窗体如图9.9所示。
图9.9 添加菜品类型
添加菜品信息如图9.10所示。
图9.10 添加菜品信息
根据条件查询菜品信息,如图9.11~图9.14所示。
图9.11 查询菜品信息
图9.12 根据条件查询菜品信息
图9.13 更新菜品信息
图9.14 删除菜品信息
整个示例演示了菜品类型的添加、菜品添加、菜品管理(删除、修改、查询)功能。
整个程序做完之后,请注意:
我们添加菜品类型时传入的SQL语句如下:
当参数很多的时候你会不会感到那样叠加字符串的方法会很容易出现问题呢?
那还有没有其他更好的书写方法呢?
答案是肯定的。我们改进SQL语句代码如下:(www.xing528.com)
这里应用了string.Format()方法,用于格式化字符串。
(1)数据绑定是控件与数据源的绑定。
(2)使用ComboBox绑定数据源需要使用3个属性:
➢DataSource数据源;
➢DisplayMember显示成员;
➢ValueMember值成员。
(3)DataGridView绑定数据源,要使用DataSource属性。
(4)DataGridView常用属性:
➢Rows行集合;
➢SelectRows用户选定的行集合;
➢CurrentRows当前选定的行;
➢CurrentCell当前选定的单元格。
(5)DataGridView常用的事件:
➢CellContentClick单元格的内容被单击时发生;
➢CellDoubleClick双击单元格时发生;
➢SelectionChanged当前选择出现更改时发生。
1.创建商品信息表,并插入测试数据,如图9.15所示。
图9.15 商品信息表
设计一个窗体界面,实现商品类型绑定下拉框。选择下拉框的类型,单击“查看”按钮,
将查询结果显示到DataGridView中,如图9.16所示。
图9.16 商品查询
2.使用上一题的数据库,设计一个窗体界面。实现将查询出的所有商品信息显示在DataGridView中,选中商品将商品信息显示在下面的文本框中。单击“保存修改”按钮,保存修改后的数据,修改成功提示用户“修改已提交!”;修改失败提示用户“修改失败!”,如图9.17所示。
图9.17 商品修改
3.创建生活费用预算表,并插入测试数据,表结构如图9.18所示。
图9.18 生活费用预算表
设计一个窗体界面,实现查询所有生活费用预算信息到DataGridView中。单击“计算”按钮,显示总共需要花费的生活费总额,如图9.19所示。
图9.19 生活费预算
修改作业第2题,设计一个窗体界面显示商品信息到DataGridView中,单击DataGridView中的表格,修改表格中的信息。单击“保存修改”按钮,将表格中被修改的数据保存到数据库中,如图9.20所示。
图9.20 商品修改
使用SqlCommandBuilder实现。
免责声明:以上内容源自网络,版权归原作者所有,如有侵犯您的原创版权请告知,我们将尽快删除相关内容。