2.8 商品信息查询修改界面功能设计
                                              第一组
领鼎小组---张权
2.8.1. GIF效果图

2.8查询商品信息.gif

2.8删除商品信息.gif

2.8修改商品信息.gif
2.8.2. 描述画面主要功能,并列出支持这些功能的后台数据库表结构
主要功能:
1)直接点击查询----查询已入库的所有商品信息,还可以输入商品完整条码或者商品名称进行模糊查询

查询
2)点击修改----可对商品信息进行修改

修改
3)点击删除----可对商品信息进行删除

删除
数据库表结构:

数据库表
2.8.3. ADO.NET删除数据库的流程
具体步骤:

删除
导入命名空间;
定义数据库连接字符串,创建Connection对象;
打开连接;
利用Command对象的ExecuteNonQuery()方法执行Delete语句;
通过ExecuteNonQuery()方法返回值判断是否修改成功,并在界面上提示;
关闭连接。
2.8.4. 画面功能是如何迭代的,描述迭代过程(无供应商à有供应商)
2.8.5. DataGridView数据绑定流程
用DataSet和DataTable为DataGridView提供数据源
先上代码:
SqlCommand cmd = new SqlCommand(sqlStr, sqlConn);
// 将该查询过程绑定到DataAdapter
SqlDataAdapter adp = new SqlDataAdapter();
adp.SelectCommand = cmd;
// 将DataSet和DataAdapter绑定
DataSet ds = new DataSet();
// 自定义一个表(MyGoods)来标识数据库的GOODS表
adp.Fill(ds, "MyGoods");
// 指定DataGridView的数据源为DataSet的MyGoods表
this.dgv_Goods.DataSource = ds.Tables["MyGoods"];
设置datagridview的items属性或者datagridview右侧箭头——编辑列

数据绑定
设置DataPropertyName属性必须对应表中的列
6. 贴入重要代码片段,并进行详细描述
            this.splitContainer1.FixedPanel = FixedPanel.Panel1;
        }
查询数据
        private void bt_Query_Click(object sender, EventArgs e)
        {
// 连接字符串,注意与实际环境保持一致
            String connStr = ConfigurationManager.ConnectionStrings["SuperMarketSales"].ConnectionString;
            SqlConnection sqlConn = new SqlConnection(connStr);
        try
        {
            // 连接数据库
            sqlConn.Open();
            // 构造命令
            String sqlStr = "select * from GOODS where 1=1 ";
            // 添加查询条件
            if (!this.tb_Id.Text.Trim().Equals(""))
            {
                sqlStr += " and ID='" + this.tb_Id.Text.Trim() + "'";
            }
            if (!this.tb_Name.Text.Trim().Equals(""))
            {
                sqlStr += " and NAME like '%" + this.tb_Name.Text.Trim() + "%'";
            }
将该查询过程绑定到DataAdapter
                SqlCommand cmd = new SqlCommand(sqlStr, sqlConn);
                SqlDataAdapter adp = new SqlDataAdapter();
                adp.SelectCommand = cmd;
// 将DataSet和DataAdapter绑定
                DataSet ds = new DataSet();
自定义一个表(MyGoods)来标识数据库的GOODS表
            adp.Fill(ds, "MyGoods");
指定DataGridView的数据源为DataSet的MyGoods表
                this.dgv_Goods.DataSource = ds.Tables["MyGoods"];
            }
            catch (Exception exp)
            {
                MessageBox.Show("访问数据库错误:" + exp.Message);
            }
            finally
            {
                sqlConn.Close();
            }
        }
        // 数据修改,删除
        private void dgv_Goods_CellContentClick(object sender, DataGridViewCellEventArgs e)
        {
            if (e.RowIndex != -1 && e.ColumnIndex == 0)
            {
                string objectId = this.dgv_Goods["Id", e.RowIndex].Value.ToString(); // 获取所要修改关联对象的主键。
                MessageBox.Show(objectId);
            }
            else if (e.RowIndex != -1 && e.ColumnIndex == 1)
            {
                string objectId = this.dgv_Goods["Id", e.RowIndex].Value.ToString(); // 获取所要删除关联对象的主键。
                MessageBox.Show(objectId);
            }
        }