【发布时间】:2013-12-29 19:20:53
【问题描述】:
我会怎么做:
- 在成功输入 MDB SQL 后创建一个确认对话框(只有 ok 选项) - 表单将关闭
- 在 form1 上更新 datagridview1 以反映新的更改,此更新只能在用户单击确认对话框上的确定按钮或在 MDB SQL 输入之后发生。
目前,用户无法确认 SQL 条目是否成功。 Form2 通过 Form1 打开,Form1 在 Form2 打开时保持打开状态 - 因此需要在后台进行更新。无需重新打开 Form1。
如果您需要任何进一步的信息,请告诉我。
这是启动一切的代码:
private void save_btn_Click(object sender, EventArgs e)
{
if (pgpText.Text.Trim().Length == 0)
{
MessageBox.Show("Please fill the following textbox: PGP");
}
else if (teamText.Text.Trim().Length == 0)
{
MessageBox.Show("Please fill the following textbox: Team");
}
else
{
using (OleDbConnection conn = new OleDbConnection())
{
string pgp_new = pgpText.Text;
string pgp_old = pgpOld.Text;
string team = teamText.Text;
conn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source='db.mdb'";
OleDbCommand command = new OleDbCommand();
command.Connection = conn;
command.CommandText = "UPDATE PGP SET PGP=?,Team=? WHERE PGP=?";
command.Parameters.Add("pgp_new", OleDbType.VarChar).Value = pgp_new;
command.Parameters.Add("team", OleDbType.VarChar).Value = team;
command.Parameters.Add("pgp_old", OleDbType.VarChar).Value = pgp_old;
conn.Open();
int affectedRows = (int)command.ExecuteNonQuery();
if (affectedRows == 0)
{
command.CommandText = "INSERT INTO PGP (PGP,Team) VALUES (?, ?)";
command.Parameters.RemoveAt(2);
command.ExecuteNonQuery();
}
}
}
}
【问题讨论】:
标签: c# sql winforms ms-access datagridview