C#的winform商品信息管理程序

编写一个Windows应用程序,具体要求:

  1. 创建SqlServer数据库MyDb(使用集成身份验证方式访问数据库)

  2. 创建商品表"Products",Products表中的字段及类型如表1所示。建表成功后自行插入数据若干条。

  3. 创建一个"显示所有商品信息"窗体,如图1所示。窗体加载时即显示数据库表Products中所有数据。运行效果如图2所示。

表1 Products表字段说明

|-----------------|--------------|------|------|
| 字段名 | 数据类型 | 是否主键 | 含义 |
| ProductID | nvarchar(10) | 是 | 商品编号 |
| ProductName | nvarchar(30) | 否 | 商品名称 |
| ProductCategory | nvarchar(20) | 否 | 商品类别 |
| Price | numeric(7,2) | 否 | 商品单价 |

代码如下所示:

先在sql sever软件里创建表,如下图所示:

在vs软件里创建两个窗体,具体如下图:

代码如下:要连接数据库的字符串,如下:

private void Form1_Load(object sender, EventArgs e)

{

// 打开数据库连接

sqloperation.dbopen();

string sql = "select * from product";

// 绑定数据集到DataGridView控件

dataGridView1.DataSource = sqloperation.query(sql);

}

private void button2_Click(object sender, EventArgs e)

{

this.Close();

}

private void button1_Click(object sender, EventArgs e)

{

updateform addform = new updateform();

addform.ShowDialog();

this.Close();

}

添加窗体代码如下:

private void button1_Click(object sender, EventArgs e)

{

string id = textBox1.Text.Trim(); // 商品编号

string name = textBox2.Text.Trim();// 商品名称

string category = textBox3.Text.Trim();// 商品类别

string price = textBox4.Text.Trim();// 商品单价

string sql = $"insert into product values('{id}','{name}','{category}','{price}')";

update(sql);

this.Close();

Form1 info = new Form1();

info.ShowDialog();

}

//执行操作

public static string update(string sql)

{

try{

SqlConnection conn = new SqlConnection("Data Source=.;Initial Catalog=product;Integrated Security=True"); // 打开数据库连接

conn.Open();

SqlCommand cmd = new SqlCommand(sql, conn);

int result = cmd.ExecuteNonQuery();

conn.Close();

MessageBox.Show("商品添加成功");

return "success";

}

catch(Exception e)

{

MessageBox.Show(e.Message);

return e.ToString();

}

}

相关推荐
xexpertS20 分钟前
队列积压治理:如何避免异步系统出现难以恢复的消息积压
java·开发语言
benchmark_cc8 小时前
如何用 Python + QuantDash 快速构建高胜率“配对交易(Pairs Trading)”策略?
开发语言·人工智能·python·pandas·量化交易·quantdash
踏月的造梦星球8 小时前
DMDPC 学习:架构、部署、运维与调优
运维·数据库·学习·架构
韩楚风8 小时前
【参天引擎】事务生命周期 / MVCC / Undo / ACID / 分布式事务 功能域整体解析
数据库·分布式·mysql·架构·cantian
renhongxia19 小时前
世界模型,是“空中楼阁”还是AGI的“最后一块拼图”?
运维·服务器·数据库·人工智能·算法·agi
程序员无隅9 小时前
Coding Agent 为什么压缩上下文后还能继续工作?上下文模块设计拆解
java·开发语言·数据库
Python+999 小时前
Java 枚举类(Enum)详解:从基础到高级应用
java·开发语言·python
愿做无知一猿9 小时前
Nacos连接MySQL异常?DataGrip竟成救星
数据库·mysql
G.O.G.O.G9 小时前
LeetCode SQL 从入门到精通(MySQL)06(上)
数据库·sql·mysql·leetcode
二炮手亮子9 小时前
浅记java线程池
java·开发语言