Souls83
01-08-2008, 18:42
Ragazzi ho un problema che non riesco a risolvere, sto cercando di fare una semplice operazione di INSERT su un DataBase tramite il comando Update() di un dataadapter, ma non appena richiamo il comando mi viene fuori un'eccezione del tipo: "Errore di sintassi nell'istruzione INSERT INTO."
Questo è il codice che uso:
oleDbConn = new OleDbConnection();
oleDbConn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + this.pathDB + ";";
oleDbConn.Open();
oleDbCom = new OleDbCommand();
oleDbCom.Connection = oleDbConn;
oleDbCom.CommandText = "SELECT Denominazione, CodiceFiscale, Indirizzo, Telefono, Email, Note FROM Clienti ORDER BY Denominazione";
oleDbAdapter = new OleDbDataAdapter(oleDbCom);
oleDbAdapter.MissingSchemaAction = MissingSchemaAction.AddWithKey;
this.myDataSet.Clear();
oleDbAdapter.Fill(myDataSet, "Clienti");
this.clients = myDataSet.Tables["Clienti"];
objCommandBuilder = new OleDbCommandBuilder(oleDbAdapter);
this.oleDbConn.Close();
// nuova riga
DataRow r = this.clients.NewRow();
for(int i = 0; i<this.fDets.textDetails.Length;i++)
r[i] = this.fDets.textDetails[i].Text;
this.clients.Rows.Add(r);
oleDbAdapter.InsertCommand = objCommandBuilder.GetInsertCommand();
oleDbAdapter.UpdateCommand = objCommandBuilder.GetUpdateCommand();
oleDbAdapter.DeleteCommand = objCommandBuilder.GetDeleteCommand();
oleDbAdapter.Update(myDataSet, "Clienti");
myDataSet.AcceptChanges();
Il database ha 6 campi di tipo testo, non è la prima volta che faccio un'applicazione del genere solo che non capisco dove possa essere il problema, qualcuno può aiutarmi?
Questo è il codice che uso:
oleDbConn = new OleDbConnection();
oleDbConn.ConnectionString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" + this.pathDB + ";";
oleDbConn.Open();
oleDbCom = new OleDbCommand();
oleDbCom.Connection = oleDbConn;
oleDbCom.CommandText = "SELECT Denominazione, CodiceFiscale, Indirizzo, Telefono, Email, Note FROM Clienti ORDER BY Denominazione";
oleDbAdapter = new OleDbDataAdapter(oleDbCom);
oleDbAdapter.MissingSchemaAction = MissingSchemaAction.AddWithKey;
this.myDataSet.Clear();
oleDbAdapter.Fill(myDataSet, "Clienti");
this.clients = myDataSet.Tables["Clienti"];
objCommandBuilder = new OleDbCommandBuilder(oleDbAdapter);
this.oleDbConn.Close();
// nuova riga
DataRow r = this.clients.NewRow();
for(int i = 0; i<this.fDets.textDetails.Length;i++)
r[i] = this.fDets.textDetails[i].Text;
this.clients.Rows.Add(r);
oleDbAdapter.InsertCommand = objCommandBuilder.GetInsertCommand();
oleDbAdapter.UpdateCommand = objCommandBuilder.GetUpdateCommand();
oleDbAdapter.DeleteCommand = objCommandBuilder.GetDeleteCommand();
oleDbAdapter.Update(myDataSet, "Clienti");
myDataSet.AcceptChanges();
Il database ha 6 campi di tipo testo, non è la prima volta che faccio un'applicazione del genere solo che non capisco dove possa essere il problema, qualcuno può aiutarmi?