2.8 商品信息查询修改界面功能设计

一.商品信息查询修改界面

1.png

二.修改商品信息界面
2.png

三.删除商品信息界面

3.png

四.效果展示图

效果图.gif

五.操作具体步骤

  1. 导入命名空间;
  2. 定义数据库连接字符串,创建Connection对象;
  3. 打开连接;
  4. 利用DataAdapter对象,建立与数据库的连接桥;
  5. 通过DataAdapter桥,将查询结果存储到DataSet对象中;
  6. DataGridView控件绑定DataSet,将查询结果显示出来
  7. 关闭连接

六.代码:

// 查询数据
    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() + "%'";

            }

            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"];

        }

        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();

            ModifyForm modifyForm = new ModifyForm(objectId);

            modifyForm.Show();

        }

        else if (e.RowIndex != -1 && e.ColumnIndex == 1)

        {

            if (MessageBox.Show("确认删除?", "提示", MessageBoxButtons.OKCancel, MessageBoxIcon.Question) == DialogResult.OK)

            {

                // 获取所要删除关联对象的主键

                string objectId = this.dgv_Goods["Id", e.RowIndex].Value.ToString();

                // 连接字符串,注意与实际环境保持一致

                String connStr = ConfigurationManager.ConnectionStrings["SuperMarketSales"].ConnectionString;

                SqlConnection sqlConn = new SqlConnection(connStr);

                try

                {

                    // 连接数据库

                    sqlConn.Open();

                    // 构造命令

                    String sqlStr = "delete from GOODS where ID=@id";

                    SqlCommand cmd = new SqlCommand(sqlStr, sqlConn);

                    // SQL字符串参数赋值

                    cmd.Parameters.Add(new SqlParameter("@id", objectId));

                    // 将命令发送给数据库

                    int res = cmd.ExecuteNonQuery();

                    // 根据返回值判断是否修改成功

                    if (res != 0)

                    {

                        MessageBox.Show("删除成功");

                    }

                    else

                    {

                        MessageBox.Show("删除失败");

                    }

                }

                catch (Exception exp)

                {

                    MessageBox.Show("访问数据库错误:" + exp.Message);

                }

                finally

                {

                    sqlConn.Close();

                }

            }

        }

    }

}

}

// 查询数据
    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() + "%'";

            }

            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"];

        }

        catch (Exception exp)

        {

            MessageBox.Show("访问数据库错误:" + exp.Message);

        }

        finally

        {

            sqlConn.Close();

        }

    }
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

  • 1.贴效果图,最好是GIF文件 2.描述画面主要功能,并列出支持这些功能的后台数据库表结构 主要功能:查询商品信息...
    196c0b9010f6阅读 2,784评论 1 0
  • Android 自定义View的各种姿势1 Activity的显示之ViewRootImpl详解 Activity...
    passiontim阅读 176,573评论 25 709
  • 用两张图告诉你,为什么你的 App 会卡顿? - Android - 掘金 Cover 有什么料? 从这篇文章中你...
    hw1212阅读 14,520评论 2 59
  • 章婼从小就是万众瞩目的那一个,那啥美丽的皮囊和有趣的灵魂都不在话下。身边的桃花总是不断,有时会让她暗自得意,有时又...
    沼泽中的龙吃芦苇阅读 1,130评论 0 0
  • 夜半风起扰无眠 烈马嘶鸣擂鼓间 尽赏黎明前时景 香茗伴生赋诗篇
    布丁爸爸幸福小小翼阅读 1,211评论 0 0

友情链接更多精彩内容