Ошибка выполнения обновления по OLEDB из C#
-
02-10-2019 - |
Вопрос
Я использую OLEDB для обновления данных в базе данных .DBF из C#.
Я получаю ошибку: System.Data.OLEDB.OLEDBException {"Неопределенная функция 'заменить' в выражении."} На 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();
Решение
Заменить не поддерживается поставщиком используемых данных. Я обновлю ответ, если и когда я узнаю, как сделать это быстро и простым способом в большом наборе данных.
Не связан с StackOverflow