如题:
C#如何保存DataGridView里多行数据?两种情况:一种是全部是新添加数据执行添加操作,一种是数据库原有信息执行修改操作。
C#如何保存DataGridView里多行数据?两种情况:一种是全部是新添加数据执行添加操作,一种是数据库原有信息执行修改操作。
解决方案 »
- winform 解析html内容
- C#不用控件导出Excel讨论,如何设置批注问题?
- webbrowser控件的问题
- 怎样在VS2005中找到久违的DataGrid控件啊?(指的是让它重新在工具面板中出现)
- 请教高手(在线等!)
- 没有人能用水晶报表实现这样的格式?
- C#新手发贴 error CS0234: 类型或命名空间名称“Net”在类或命名空间“System”中不存在?
- WPF,请问TemplateBinding标记扩展
- 窗体设计
- c# webbrowers给textarea填表,如果直接写在webbrowers是成功的。同样代码在button中就失败了。求怎样在button中不失败。
- c#里面怎么样动态定义Table列名?
- 绑定combobox后,item重复了
遍历findcontrol查询保存数据
没关系啊,一开始Select * from table1的DataTable虽然是空的(Rows.Count=0),
绑定DataGridView.DataSource之后,新增也能取得到。
public partial class Form1 : Form
{
private OleDbConnection connection = null;
private OleDbCommand selectCommand = null;
private OleDbDataAdapter dataAdapter = null;
private string connectionString =
@"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=..\..\DB\Customers.mdb;Persist Security Info=True"; public Form1()
{
InitializeComponent();
} private void Form1_Load(object sender, EventArgs e)
{
connection = new OleDbConnection(connectionString);
selectCommand = connection.CreateCommand();
selectCommand.CommandText = "SELECT CustomerID, CompanyName, ContactName, Address, Phone FROM Customers";
dataAdapter = new OleDbDataAdapter();
dataAdapter.SelectCommand = selectCommand;
DataTable data = new DataTable();
dataAdapter.Fill(data);
this.dataGridView1.DataSource = data; OleDbCommandBuilder builder = new OleDbCommandBuilder(dataAdapter);
dataAdapter.UpdateCommand = builder.GetUpdateCommand();
dataAdapter.InsertCommand = builder.GetInsertCommand();
dataAdapter.DeleteCommand = builder.GetDeleteCommand();
} private void button1_Click(object sender, EventArgs e)
{
DataTable data = (DataTable)this.dataGridView1.DataSource;
DataTable changedData = data.GetChanges(); if (changedData != null)
{
dataAdapter.Update(changedData);
data.AcceptChanges();
}
}
}