Когда обновление данных в листе excel до большего количества столбцов не работает почему
У меня есть имя листа excel Allprinting
содержит идентификатор пользователя,имя пользователя,UserNameAR,стране,CountryAR,член,MemberAR столбцы
Мне нужно сделать обновление данных в этом листе excel, если клиент изменит какие-либо данные в них
столбцы (идентификатор пользователя,имя пользователя,UserNameAR,стране,CountryAR,член,MemberAR)
но ниже код не работает для меня
так в чем же проблема
мой код
var fileName = string.Format("{0}\\Book502", Directory.GetCurrentDirectory()); var connection = string.Format("Provider=Microsoft.ACE.OLEDB.12.0;" + "Data Source={0};Mode=ReadWrite;Extended Properties=Excel 12.0 Xml;", fileName); try { System.Data.OleDb.OleDbConnection MyConnection; System.Data.OleDb.OleDbCommand myCommand = new System.Data.OleDb.OleDbCommand(); string sql = null; MyConnection = new System.Data.OleDb.OleDbConnection(connection); MyConnection.Open(); myCommand.Connection = MyConnection; sql = "Update [AllPrinting$] SET UserName=@UserName and UserNameAR=@UserNameAR and Country=@Country and CountryAR=@CountryAR AND Member=@Member AND MemberAR=@MemberAR WHERE UserID=@UserID"; myCommand.CommandText = sql; myCommand.Parameters.AddWithValue("@UserName", textBox2.Text); myCommand.Parameters.AddWithValue("@UserID", textBox1.Text); myCommand.Parameters.AddWithValue("@UserNameAR", textBox3.Text); myCommand.Parameters.AddWithValue("@Country", textBox4.Text); myCommand.Parameters.AddWithValue("@CountryAR", textBox5.Text); myCommand.Parameters.AddWithValue("@Member", textBox6.Text); myCommand.Parameters.AddWithValue("@MemberAR", textBox7.Text); myCommand.ExecuteNonQuery(); MyConnection.Close(); } catch (Exception ex) { MessageBox.Show(ex.ToString()); }
Я могу обновить данные в листе excel, если сделаю обновление в одном столбце
sql = "Update [AllPrinting$] SET UserName=@UserName and UserNameAR=@UserNameAR WHERE UserID=@UserID";
Но обновление данных до большего столбца не работает следующим образом :
sql = "Update [AllPrinting$] SET UserName=@UserName and UserNameAR=@UserNameAR and Country=@Country and CountryAR=@CountryAR AND Member=@Member AND MemberAR=@MemberAR WHERE UserID=@UserID";
Что я уже пробовал:
когда обновление данных в листе excel до большего количества столбцов не работает почему