2010-07-07 98 views
1

我正在使用OLEDB更新c#中.dbf數據庫中的數據。從C#執行OLEDB更新時出錯#

我得到錯誤:System.Data.OleDb.OleDbException {「Undefined function'在表達式中替換'。」} ExecuteNonQuery。

我怎樣才能使這項工作的變化最小,我需要在許多文件中用單引號替換雙引號,所以我必須自動執行此過程。

我應該嘗試ODBC還是其他的.dbf數據庫?

請幫忙!

string connString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + directory +";Extended Properties=dBASE III;"; 
OleDbConnection conn = new OleDbConnection(connString); 
conn.Open(); 
OleDbCommand cmd = conn.CreateCommand(); 
cmd.CommandType = System.Data.CommandType.Text; 
cmd.CommandText = "update Addres_1 set NAME_ENU = replace(NAME_ENU, 'a', 'b') where NAME_ENU like '*a*'"; 
int res = cmd.ExecuteNonQuery(); 
+0

「替換」功能是否正確?它應該是'替換'? – desigeek 2010-07-07 15:21:09

+0

'替換'和'替換'在結果中做了任何更改 – watbywbarif 2010-07-07 15:27:05

回答

1

替換不受使用的數據提供者支持。 我會更新答案,如果當我發現如何以快速和簡單的方式在大型數據集上做到這一點。