编辑ADO记录集而无需更改数据库

时间:2019-06-26 09:10:38

标签: sql-server excel vba adodb

我试图在将记录内容粘贴到工作表之前向记录集添加一些数据。我想处理与数据库断开连接的记录集,从而仅更改导入的数据本身。

我使用了this thread中的方法,但不幸的是我最终遇到了错误:

  

多步操作生成错误。检查每个状态值。

简而言之,我有一个带有空字段的查询,该字段在将rs粘贴到ws之前填充。

请注意,我遗漏了很多代码。所有变量都已声明。

private async Task UploadFileTask(string fileSource)
{
    Response = await Client.PutFile(Path.GetFileName(fileSource), File.OpenRead(fileSource));
}

或者,我可以用记录集填充数组并编辑该数组,但是我觉得这是我不需要采取的步骤

1 个答案:

答案 0 :(得分:1)

您可以在进行编辑之前断开ADO记录集的连接。但是,根据记录集是否实际可更新,您仍然可能会遇到错误。

要断开记录集,只需删除连接:

Set rs.ActiveConnection = Nothing

这将阻止它将所有更改发送回服务器。

断开连接的记录集在可写性方面仍取决于数据库。他们可以重新连接,然后应该能够将更改提交回数据库。

如果要调整数据库侧不可写的内容,建议将记录集移至数组。您可以使用GetRows method高效地移动数据。