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

}

}

相关推荐
翔云1234561 小时前
RocksDB中,客户端每写入一次数据,需要访问几次磁盘
运维·数据库·mysql
DevOpenClub1 小时前
职教高考控制线 API:招生类别枚举、筛选与空分数含义
java·数据库·高考
心祭丫丫2 小时前
【每天一个 Python 小案例17】Python 实现通讯录
开发语言·人工智能·笔记·python·学习
露天赏雪2 小时前
第3篇:Sentinel熔断降级实战:大模型接口抖动时的服务兜底方案
java·开发语言·人工智能·spring boot·spring·servlet·sentinel
GeW2 小时前
新质生产力路线图解读:数据库性能优化与Linux调优专场
linux·数据库
在多学一点4 小时前
MYSQL第二次作业
android·数据库·mysql
yeccheng4 小时前
MySQL 索引超详解:从底层 B+ 树到面试高频考点
java·开发语言·jvm·mysql·面试
Risehuxyc4 小时前
Microsoft.Data.Sqlite体验
数据库·sqlite
联犀4 小时前
纯 Go 的 CAD 开源库 go-cad:直接解析 DWG/DXF,现在也能导出 PDF
开发语言·golang·pdf
骑着蜗牛撵大象3274 小时前
MySQL 8.0 迁移后 SQL 变慢:执行计划里 3 类被忽略的成本差异
android·数据库·sql·mysql·优化器·执行计划