C#如何访问DataGridView数据库记录中选定的数据字段



我是数据库编程的新手,所以我可能有非常简单的问题。

在表单上,我有一个datagridview,该数据图显示了SQL数据库中的所有记录。当我选择一条行(OnRowenter事件(时,我想在文本框中显示相同的数据,这些数据并未符合数据源,但我不知道如何访问所选记录及其字段。我看到了许多使用SQL语句的示例,但这是唯一的方法吗?还是有更简单的方法。我认为我应该能够几乎直接访问当前记录及其字段?有可能吗?

我正在使用Visual Studio社区2013

提前提供帮助。

    private void dataGridView1_RowEnter(object sender, DataGridViewCellEventArgs e)
    {
        string asd = dataGridView1.Rows[e.RowIndex].Cells["NameOfColumn"].Value.ToString();
    }

您可以通过此行访问任何行的任何列。

编辑:您只是告诉我,您想从数据库和按钮(保存 - 覆盖(填充2个文本框,您想保存/覆盖它。那么,为什么您不从数据库中填充它

using (FbConnection con = new FbConnection(connectionString))
{
    con.Open();
    using (FbCommand cmd = new FbCommand("SELECT TEXT1, TEXT2 FROM TABLE WHERE CONDITION", con))
    {
        FbDataReader dr = cmd.ExecuteReader();
        if(dr.Read())
        {
            textBox1.Text = dr[0].ToString();
            textBox2.Text = dr[1].ToString();
        }
    }
    con.close();
}

然后在用户按保存后,只需获取整个文本并更新数据库

using (FbConnection con = new FbConnection(connectionString))
{
    con.Open();
    using (FbCommand cmd = new FbCoimmand("UPDATE TABLE SET TEXT1 = @Text1, TEXT2 = @Text2 WHERE CONDITION))
    {
        cmd.Parameters.AddWithValue("@Text1", textBox1.Text);
        cmd.Parameters.AddWithValue("@Text2", textBox2.Text);
        cmd.ExecuteNonQuery();
    }
    con.Close();
}

如果用户在其他一些文本框中编写文本,并且您想将该文本添加到数据库中的当前文本中,以便您只能从数据库中读取文本并将其放入字符串中,在该字符串中,您可以从用户添加字符串,然后将其保存为数据库

最新更新