मैं अपने datatable के लिए एक नई पंक्ति जोड़ने की कोशिश कर रहा हूँ।
इस कोड को चलाते समय मुझे कोई त्रुटि नहीं हुई लेकिन मेरी तालिका में कुछ भी नहीं हुआ।
यहां मेरा कोड है:
string table = "`DONNEE ENTRANT`";
OleDbDataAdapter adapter = new OleDbDataAdapter("SELECT * From " + table, _conn);
OleDbCommandBuilder cmdBuilder = new OleDbCommandBuilder(adapter);
DataTable dataTable = new DataTable(table);
adapter.Fill(dataTable);
DataRow row = dataTable.NewRow();
row["CODE LIAISON"] = "TEST";
dataTable.Rows.Add(row);
dataTable.AcceptChanges();
adapter.Update(dataTable);
किसी भी विचार क्या मैं गलत कर रहा हूँ (इस तरह से, मुझे पता है कि हम ओलेडब के साथ कमांड चला सकते हैं लेकिन वास्तव में इस तरह से नहीं कर सकते हैं ...)।
धन्यवाद
उत्तर:
उत्तर № 1 के लिए 1आप जो कर रहे हैं उसके आधार पर यह प्रतीत होता है कि आप चाहते हैं कि नई पंक्ति डेटाबेस में समाप्त हो जाए। इसलिए इस लाइन को हटा दें:
dataTable.AcceptChanges();
क्योंकि वह बदल रहा है RowState
सेवा मेरे Unchanged
और आपको इसकी आवश्यकता है Added
। इसके अलावा, आपको यह सुनिश्चित करने की आवश्यकता है कि आपकी adapter
एक है InsertStatement
परिभाषित इसलिए यह इसका उपयोग कर सकता है।
जवाब के लिए 0 № 2
मैं `` के बजाय [] का उपयोग करूंगा लेकिन मेरा मानना है कि आपकी समस्या को ठीक करने का उत्तर पहले ही @Michael Perrenoud ने दिया था