namespace WindowsFormsApplication1 { public partial class 修改员工信息 : Form { string SNO=""; public 修改员工信息() { InitializeComponent(); } public 修改员工信息(string sno,string sname,string dname,string dno,string gno) { InitializeComponent(); textBox1.Text=sno; textBox2.Text=sname; textBox3.Text=dno; textBox4.Text=dname; textBox5.Text=gno; } private void button1_Click(object sender, EventArgs e) { string sql = "select* from staff where sno='"SNO"'"; Dao dao=new Dao(); if(dao.Execute(sql)>0) { MessageBox.Show("修改成功"); this.Close(); } } } }
时间: 2024-01-15 13:03:08 浏览: 71
在这段代码中,你定义了一个Windows窗体应用程序的类`修改员工信息`,在这个类中定义了一个变量`SNO`,用于保存员工的编号。你还定义了一个无参的构造函数和一个带有参数的构造函数,用于初始化窗体上的文本框。
在`button1_Click`事件中,你定义了一个SQL查询语句,用于查询员工信息。然而,在这个SQL语句中,你没有将变量`SNO`的值与查询语句中的员工编号进行拼接,导致查询语句不正确。应该修改为:
```csharp
string sql = "select * from staff where sno='" + SNO + "'";
```
接着,你创建了一个`Dao`类对象,并调用其`Execute`方法来执行SQL语句。但是,在代码中并没有对文本框中的修改信息进行更新。你需要修改代码,将文本框中的信息更新到数据库中。比如,修改SQL语句为:
```csharp
string sql = "update staff set sname='" + textBox2.Text + "', dno='" + textBox3.Text + "', dname='" + textBox4.Text + "', gno='" + textBox5.Text + "' where sno='" + SNO + "'";
```
这个SQL语句将员工的姓名、部门编号、部门名称、工种编号更新到数据库中。最后,应该在执行SQL语句后关闭当前窗体,例如:
```csharp
if (dao.Execute(sql) > 0)
{
MessageBox.Show("修改成功");
this.Close();
}
```
阅读全文