显示和编辑查询结果后,从数据网格视图更新数据库

本文关键字:数据网 数据 网格 视图 数据库 更新 编辑 查询 结果 显示 | 更新日期: 2023-09-27 18:22:18

我是使用C#作为前端查看和编辑数据库的新手。我可以使用下面的代码打开数据库查询并使用数据网格视图显示结果。

     private void btnconnect_Click(object sender, EventArgs e)
    {
        dataGridView1.AllowUserToAddRows = false;
        dataGridView1.Columns.Add("Accode", "Accode");
        dataGridView1.Columns.Add("CaseNO", "Case NO");
        dataGridView1.Columns.Add("Doccumentname", "Document Name");
        dataGridView1.Columns.Add("CreatedDate", "Created Date");

        string strFile = txtFileName.Text;
        string strPass = "********";
        OleDbConnection connect = new OleDbConnection();
        connect.ConnectionString = @"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + strFile + ";Jet OLEDB:Database Password=" + strPass + ";";
        connect.Open();
    if (txtCaseNo.Text != "" && txtAccode.Text != "")
        {
            OleDbCommand command = new OleDbCommand();
            command.Connection = connect;
            command.CommandText = "SELECT CorrespondenceHistory.Accode, CorrespondenceHistory.CaseNo,CorrespondenceHistory.DocumentName, CorrespondenceHistory.CreatedDate FROM CorrespondenceHistory WHERE (((CorrespondenceHistory.CaseNo)=" + txtCaseNo.Text + "),((CorrespondenceHistory.Accode)=" + txtAccode.Text + "))";
            OleDbDataReader reader = command.ExecuteReader();
            while (reader.Read())
            {
                dataGridView1.Rows.Add();
                dataGridView1.Rows[dataGridView1.Rows.Count - 1].Cells["Accode"].Value = reader[0].ToString();
                dataGridView1.Rows[dataGridView1.Rows.Count - 1].Cells["CaseNO"].Value = reader[1].ToString();
                dataGridView1.Rows[dataGridView1.Rows.Count - 1].Cells["Doccumentname"].Value = reader[2].ToString();
                dataGridView1.Rows[dataGridView1.Rows.Count - 1].Cells["CreatedDate"].Value = reader[3].ToString();
            }
        }
        else
            MessageBox.Show("Enter a search criteria", "Enter a search criteria");
        connect.Close();
       }

但我不确定如何让它根据数据网格视图中所做的任何更改来更新数据库表。由于该程序将在多台计算机上使用(所有计算机都具有相同的数据库和密码),数据库的位置会发生变化,因此在创建连接字符串时会从文本框中提取。

显示和编辑查询结果后,从数据网格视图更新数据库

我不确定您想要的是桌面应用程序还是基于web的应用程序。如果选择基于web的应用程序,则可以指定InsertCommand、UpdateCommand、SelectCommand等来执行操作。有关详细信息,请参阅http://imar.spaanjaars.com/416/building-layered-web-applications-with-microsoft-aspnet-20-part-1.