我是数据库编程的新手,所以我可能有非常简单的问题。
在表单上,我有一个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();
}
如果用户在其他一些文本框中编写文本,并且您想将该文本添加到数据库中的当前文本中,以便您只能从数据库中读取文本并将其放入字符串中,在该字符串中,您可以从用户添加字符串,然后将其保存为数据库