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

}

}

相关推荐
-Xie-2 分钟前
Redis(八)——多线程与单线程
java·数据库·redis
刘欣的博客10 分钟前
C# 从API接口获取对象而不用先定义对象类
c#·json动态创建对象
IMPYLH12 分钟前
Lua 的 collectgarbage 函数
开发语言·笔记·junit·单元测试·lua
G探险者23 分钟前
为什么 VARCHAR(1000) 存不了 1000 个汉字? —— 详解主流数据库“字段长度”的底层差异
数据库·后端·mysql
百锦再28 分钟前
第18章 高级特征
android·java·开发语言·后端·python·rust·django
Tony Bai42 分钟前
Go 在 Web3 的统治力:2025 年架构与生态综述
开发语言·后端·架构·golang·web3
CoderYanger1 小时前
B.双指针——3194. 最小元素和最大元素的最小平均值
java·开发语言·数据结构·算法·leetcode·职场和发展·1024程序员节
Charles_go1 小时前
C#中级、double和decimal有什么区别
开发语言·c#
思成不止于此1 小时前
深入理解 C++ 多态:从概念到实现的完整解析
开发语言·c++·笔记·学习·多态·c++40周年