我有一个包含数据信息的数据表,我想通过插入查询将其放入 Microsoft 访问的表中。任何人都可以帮我这样做吗?
foreach ( DataRow row in table.Rows)
{
insertCommand.CommandText = "INSERT INTO [tableName] VALUES (row[a], row[b], row[c])";
insertCommand.ExecuteNonQuery();
}
您可以使用命令生成器。命令生成器将为您确定命令。
您的数据适配器需要所有可用的不同类型的命令,以便在需要时调用。通过向命令生成器提供 SELECT 命令,它将为您确定 UPDATE、DELETE 和 INSERT 命令。
您需要做的就是在您尝试更新数据库时将 DataTable 对象传递给适配器。
using (OleDbConnection con = new OleDbConnection("YourConnectionString"))
{
var adapter = new OleDbDataAdapter();
adapter.SelectCommand = new OleDbCommand("SELECT * FROM [YourAccessTable]", con);
var cbr = new OleDbCommandBuilder(adapter);
cbr.GetDeleteCommand();
cbr.GetInsertCommand();
cbr.GetUpdateCommand();
try
{
con.Open();
adapter.Update(YourDataTable);
}
catch (OleDbException ex)
{
MessageBox.Show(ex.Message, "OledbException Error");
}
catch (Exception x)
{
MessageBox.Show(x.Message, "Exception Error");
}
}