美文网首页
2018-12-03

2018-12-03

作者: 忆流年流年终将逝 | 来源:发表于2018-12-03 15:07 被阅读0次

    2.8、商品信息查询界面登陆设计

    一、贴效果图,最好是GIF文件

    1.gif

    二、描述画面主要功能,并列出支持这些功能的后台数据库表结构

    功能:实现商品信息的修改和删除

    后台数据表结构

    列名 数据类型 允许为空 备注
    ID varchar(50) 商品条码(主键)
    NAME varchar(20) varchar(20)
    PRICE float 商品价格
    SUPPLIER int 供应商代码(外键)
    SPEC varchar(20) 商品规格
    REMARK varchar(20) 备注

    三、ADO.NET删除数据库的流程

    1、导入命名空间;

    2、定义数据库连接字符串,创建Connection对象;

    3、打开连接;

    4、利用Command对象的ExecuteNonQuery()方法执行Delete语句;

    5、通过ExecuteNonQuery()方法返回值判断是否修改成功,并在界面上提示;

    6、关闭连接。 image.png

    四、画面功能是如何迭代的,描述迭代过程(无供应商à有供应商)

    1、无供应商时,供应商选择功能时不会用到数据库SUPPLIER表。

    2、有供应商时,供应商选择功能时需要用到数据库中的SUPPLIER表。

    五、DataGridView数据绑定流程

    DataSet ds=new DataSet();
    this.dataGridView1.DataSource=ds.Tables["表名"];
    

    六、贴入重要代码片段,并进行详细描述

    代码

    private void ModifyForm_Load(object sender, EventArgs e)
            {
                // 连接字符串,注意与实际环境保持一致
                String connStr = ConfigurationManager.ConnectionStrings["SuperMarketSales"].ConnectionString;
                SqlConnection sqlConn = new SqlConnection(connStr);
                try
                {
                    // 连接数据库
                    sqlConn.Open();
    
                    // 构造命令发送给数据库
                    String sqlStr = "select * from GOODS where ID=@id";
                    SqlCommand cmd = new SqlCommand(sqlStr, sqlConn);
    
                    // SQL字符串参数赋值
                    cmd.Parameters.Add(new SqlParameter("@id", this.goodsId));
    
                    SqlDataReader dr = cmd.ExecuteReader();
    
                    // 如果从数据库中查询到记录,则显示这些数据
                    if (dr.HasRows)
                    {
                        dr.Read();
                        this.tb_Id.Text = dr["ID"].ToString();
                        this.tb_Name.Text = dr["NAME"].ToString();
                        this.tb_Price.Text = dr["PRICE"].ToString();
                        this.tb_Spec.Text = dr["SPEC"].ToString();
                        this.tb_Remark.Text = dr["REMARK"].ToString();
                    }
                    else
                    {
                        MessageBox.Show("未找到相关记录", "提示", MessageBoxButtons.OK, MessageBoxIcon.Error);
                    }
                }
                catch (Exception exp)
                {
                    MessageBox.Show("访问数据库错误:" + exp.Message);
                }
                finally
                {
                    sqlConn.Close();
                }
            }
    
            private void bt_Ok_Click(object sender, EventArgs e)
            {
                String id = this.tb_Id.Text.Trim();
                String name = this.tb_Name.Text.Trim();
                float price = float.Parse(this.tb_Price.Text.Trim());
                String spec = this.tb_Spec.Text.Trim();
                String remark = this.tb_Remark.Text.Trim();
    
                // 连接字符串,注意与实际环境保持一致
                String connStr = ConfigurationManager.ConnectionStrings["SuperMarketSales"].ConnectionString;
                SqlConnection sqlConn = new SqlConnection(connStr);
                try
                {
                    // 连接数据库
                    sqlConn.Open();
    
                    // 构造命令
                    String sqlStr = "update GOODS set NAME=@name, PRICE=@price, SPEC=@spec, REMARK=@remark where ID=@id";
                    SqlCommand cmd = new SqlCommand(sqlStr, sqlConn);
    
                    // SQL字符串参数赋值
                    cmd.Parameters.Add(new SqlParameter("@id", id));
                    cmd.Parameters.Add(new SqlParameter("@name", name));
                    cmd.Parameters.Add(new SqlParameter("@price", price));
                    cmd.Parameters.Add(new SqlParameter("@spec", spec));
                    cmd.Parameters.Add(new SqlParameter("@remark", remark));
    
                    // 将命令发送给数据库
                    int res = cmd.ExecuteNonQuery();
    
                    // 根据返回值判断是否修改成功
                    if (res != 0)
                    {
                        MessageBox.Show("商品信息修改成功");
                        this.Close();
                    }
                    else
                    {
                        MessageBox.Show("商品信息修改失败");
                    }
                }
                catch (Exception exp)
                {
                    MessageBox.Show("访问数据库错误:" + exp.Message);
                }
                finally
                {
                    sqlConn.Close();
                }
           }
    

    相关文章

      网友评论

          本文标题:2018-12-03

          本文链接:https://www.haomeiwen.com/subject/qvyycqtx.html