我正在使用OLEDB从c#更新.dbf数据库中的数据。
我在ExecuteNonQuery上得到错误:System.Data.OleDb.OleDbException {“表达式中的未定义函数'replace'。”}
如何使用最少的更改来完成此工作,我需要在许多文件中用单引号替换双引号,因此我必须自动执行此过程。
我应该为.dbf数据库尝试ODBC还是别的什么?
请帮忙!
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 :(得分:1)
使用过的数据提供程序不支持替换。 如果我在大型数据集上快速简单地找到如何做到这一点,我将更新答案。