2016-04-28 3 views
-1

Без ошибок я не я использую этот код для обновления базы данных:My Access DB не будет обновляться. в коде

var connectionString = ConfigurationManager.ConnectionStrings["MyDatabase"].ConnectionString; 
string commandString = string.Empty; 
using (OleDbConnection con = new OleDbConnection(connectionString)) 
{ 
    con.Open(); 
    OleDbCommand command = new OleDbCommand(commandString, con); 
    commandString = "UPDATE accesscontrol SET [email protected] WHERE [email protected] AND [email protected]"; 

    command.Parameters.AddWithValue("userName", Environment.UserName); 
    command.Parameters.AddWithValue("isEnabled", tempPerson.isBool.ToString()); 
    command.Parameters.AddWithValue("userNameInGrid", tempPerson.Name); 
    command.ExecuteNonQuery(); 
    command.Parameters.Clear(); 
} 

ответ

1

Поскольку вы используете пустой commandString

Сначала вы установили:

string commandString = string.Empty; 

А потом вы прошли пустой commandString в OleDbCommand, после чего вы устанавливаете значение на переменную commandString, но не на OleDbCommand

OleDbCommand command = new OleDbCommand(commandString, con); 
commandString = "UPDATE accesscontrol SET [email protected] WHERE [email protected] AND [email protected]"; 

Изменить Вы код:

commandString = "UPDATE accesscontrol SET [email protected] WHERE [email protected] AND [email protected]"; 
OleDbCommand command = new OleDbCommand(commandString, con); 

UPDATE

Также следует добавить @ перед именем параметра

command.Parameters.AddWithValue("@userName", Environment.UserName); 
command.Parameters.AddWithValue("@isEnabled", tempPerson.isBool.ToString()); 
command.Parameters.AddWithValue("@userNameInGrid", tempPerson.Name); 
+0

Я сделал изменения и таблица не обновляется –

+0

@ softwareisfun См. мое обновление – Marusyk

+0

@softwareisfun Любые новости? Было ли это полезно? – Marusyk