2013-07-15 44 views
0

我正在嘗試使用新數據在訪問表列中查找並替換「某些文本」,如下所示。查找和替換訪問表列中的文本

這列數據裏面的一些文字

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

這不符合Access數據庫,有執行相同操作的另一種方式?

+0

你有錯誤信息嗎? –

回答

0

它適用於VBA,但在SQL中可能需要使用WHERE子句;也就是說,如果找不到文本,則不會嘗試使用Replace()。

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

我還沒有機會測試這個。

也許值得把方括號放在字段名Replace([column],的周圍,儘管這應該不是必須的。

已添加正如您發現的那樣,您無法使用C#中的Replace。您可以使用其他功能 - 左,右,中,修剪 - 但這不會有幫助,除非它是一個非常簡單的替換(可能來自左側)。否則,您需要獲取並遍歷可更新的RecordSet並在C#中執行替換。

或者,如果您可以從Access中訪問數據庫,則可以創建並保存查詢,並使用Access-Automation運行(打開)此查詢。獲取可更新記錄集是更好的選擇。

+0

查看了它之後,我無法在C#應用程序中使用Replace,因爲Jet Engine沒有定義Replace函數。我仍然沒有找到這個問題的答案,但如果有人知道如何解決這個問題,將不勝感激。 –