0

我正在尝试用新数据查找并替换访问表列中的“某些文本”,如下所示。

这是列数据中的一些文本

Update table set column = Replace(column, 'some text', 'new data')

这不适用于访问数据库,是否有另一种执行相同操作的方法?

4

1 回答 1

0

它在 VBA 中有效,但在 SQL 中您可能需要使用 WHERE 子句;也就是说,如果找不到文本,则不尝试使用 Replace()。

Update table set column = Replace(column, 'some text', 'new data') 
WHERE column Like '*some text*'

我还没有机会测试这个。

在 field-name 周围放置方括号可能也是值得的Replace([column],,尽管这实际上不是必需的。

已添加正如您所发现的,您不能使用 C# 中的 Replace。您可以使用其他功能 - Left、Right、Mid、Trim - 但这无济于事,除非它是一个非常简单的替换(可能从左侧)。否则,您将需要获取并循环通过可更新RecordSet并​​在 C# 中执行替换。

或者,如果您可以从 Access 中访问数据库,则可以创建并保存一个查询,然后使用 Access-Automation 运行(打开)此查询。获得可更新的记录集是更好的选择。

于 2013-07-15T22:32:24.180 回答