编写一个Windows应用程序,具体要求:
-
创建SqlServer数据库MyDb(使用集成身份验证方式访问数据库)
-
创建商品表"Products",Products表中的字段及类型如表1所示。建表成功后自行插入数据若干条。
-
创建一个"显示所有商品信息"窗体,如图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();
}
}