Domanda

Sto usando OLEDB per aggiornare i dati nel database .DBF da C#.

Ricevo errore: System.data.oledb.oledBexception {"Funzione indefinita" Sostituisci "nell'espressione."} Su ExecuteNonQuery.

Come posso far funzionare questo con meno modifiche, devo sostituire doppie citazioni con citazioni singole in molti file, quindi devo automatizzare questo processo.

Dovrei provare ODBC o qualcos'altro per il database .DBF?

Aiuto per favore!

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();
È stato utile?

Soluzione

Sostituire non è supportato dal fornitore di dati utilizzato. Aggiornerò la risposta se e quando scopro come farlo in modo veloce e semplice sul set di dati di grandi dimensioni.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top