2018-12-03第六组 李易林


智慧社区商超管理系统的设计与开发---------商品信息录入界面功能设计

一、gif动态效果图

2018-12-03第六组 李易林_第1张图片
效果图

二、主要功能及后台数据库表结构

1、主要功能

登陆进入系统之后,打开商品录入板块。此时会弹出录入界面,输入想要录入的商品信息点击录入,若步骤成功,将会弹出商品信息录入成功的窗口点击确定,即可录入进数据库。

2、后台数据库表结构


2018-12-03第六组 李易林_第2张图片
2018-12-03第六组 李易林_第3张图片
·

三、ADO.NET插入数据库的流程

1、图解


2018-12-03第六组 李易林_第4张图片
示意图


2018-12-03第六组 李易林_第5张图片
步骤解释图

2、代码

```

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

}

catch (Exception exp)

{

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

}

finally

{

  sqlConn.Close();

}

// 构造命令

String sqlStr = "insert

into GOODS2(ID, NAME, PRICE, SPEC, REMARK) values(@id, @name, @price, @spec,

@remark)";

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("商品信息录入成功");

}

else

{

  MessageBox.Show("商品信息录入失败");

}

```

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

1、外键

界面无外键的时候是没有供应商的选项,用的是GOODSINFO表在这个数据库表中是没有外键的,通过添加供应商这一列的外键实现从数据库GOODS表中直接用数据库中SUPPLIER表中的数据。

五、ComboBox数据绑定流程

1、具体流程:

a、指定ComboBox的数据源为DataSet的MySupplier表

b、将DataSet和DataAdapter绑定

c、加入链接数据库代码try··catch·· finally

2、图示:


2018-12-03第六组 李易林_第6张图片


2018-12-03第六组 李易林_第7张图片

六、项目过程中的重要代码

插入窗体

```

RecordForm pwdForm = new RecordForm();

            pwdForm.MdiParent = this;

            pwdForm.StartPosition = FormStartPosition.CenterScreen;

            pwdForm.Show();

```

录入商品信息

```

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 = "insert into GOODS2(ID, NAME, PRICE, SPEC, REMARK) values(@id, @name, @price, @spec, @remark)";

                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("商品信息录入成功");

                }

                else

                {

                    MessageBox.Show("商品信息录入失败");

                }

            }

            catch (Exception exp)

            {

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

            }

            finally

            {

                sqlConn.Close();

            }

```

你可能感兴趣的:(2018-12-03第六组 李易林)