dgvScheme是一个DataGridView控件
使用UpdateData函数将变量更新到Access数据库
其中的UpdateCommand可以
但是InsertCommand执行错误
也就是只能修改当现已经存在的记录,如果新建记录,在更新的时候就会出现INSERT INTO语句执行错误的异常 // 定义变量
private DataTable DT = new DataTable();
private OleDbDataAdapter ODA = new OleDbDataAdapter(); // 连接数据库的函数
private void ConnectDatabase()
{
OleDbConnection cn = new OleDbConnection(@"Provider=Microsoft.Jet.OleDb.4.0;Data Source=E:\MemorandumData.mdb");
OleDbCommand cmd = new OleDbCommand("SELECT id AS 编号, Content AS 内容,Time AS 时间 FROM Scheme", cn);
ODA.SelectCommand = cmd;
ODA.Fill(DT);
dgvScheme.DataSource = DT;
}
// 更新数据库的函数
private void UpdateDatabase()
{
try
{
OleDbCommandBuilder cb = new OleDbCommandBuilder(ODA);
ODA.UpdateCommand = cb.GetUpdateCommand();
ODA.InsertCommand = cb.GetInsertCommand();
ODA.Update(DT);
MessageBox.Show("保存成功!");
}
catch(Exception ex)
{
MessageBox.Show(ex.ToString());
}
}
使用UpdateData函数将变量更新到Access数据库
其中的UpdateCommand可以
但是InsertCommand执行错误
也就是只能修改当现已经存在的记录,如果新建记录,在更新的时候就会出现INSERT INTO语句执行错误的异常 // 定义变量
private DataTable DT = new DataTable();
private OleDbDataAdapter ODA = new OleDbDataAdapter(); // 连接数据库的函数
private void ConnectDatabase()
{
OleDbConnection cn = new OleDbConnection(@"Provider=Microsoft.Jet.OleDb.4.0;Data Source=E:\MemorandumData.mdb");
OleDbCommand cmd = new OleDbCommand("SELECT id AS 编号, Content AS 内容,Time AS 时间 FROM Scheme", cn);
ODA.SelectCommand = cmd;
ODA.Fill(DT);
dgvScheme.DataSource = DT;
}
// 更新数据库的函数
private void UpdateDatabase()
{
try
{
OleDbCommandBuilder cb = new OleDbCommandBuilder(ODA);
ODA.UpdateCommand = cb.GetUpdateCommand();
ODA.InsertCommand = cb.GetInsertCommand();
ODA.Update(DT);
MessageBox.Show("保存成功!");
}
catch(Exception ex)
{
MessageBox.Show(ex.ToString());
}
}
解决方案 »
免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货