Попытка обновления SQL Server CE не удалась - PullRequest
1 голос
/ 23 октября 2010

У меня вставка работает нормально с моей базой данных SQL Server CE, но я пытаюсь обновить.

Может кто-нибудь увидеть, что не так с тем, что я пытаюсь

using (SqlCeConnection con = new SqlCeConnection(ConfigurationManager.ConnectionStrings["MyConnection"].ConnectionString))
{
    con.Open();
    // Insert into the SqlCe table. ExecuteNonQuery is best for inserts.
    string sql = "UPDATE SalesAssistant SET "
          + "(Name=@Name,IsEnabled=@IsEnabled,Role=@Role,LastModifiedDate=@LastModifiedDate,IsAdministrator=@IsAdministrator,PIN=@PIN,IsDeleted=@IsDeleted)" +
          "WHERE SalesAssistantID=@SalesAssistantID";

    using (SqlCeCommand com = new SqlCeCommand(sql, con))
    {
        com.Parameters.AddWithValue("@SalesAssistantID", em.ServerData.EmployeeID);
        com.Parameters.AddWithValue("@Name", em.ServerData.EmployeeName);
        com.Parameters.AddWithValue("@IsEnabled", em.ServerData.IsEnabled);
        com.Parameters.AddWithValue("@LastModifiedDate", em.ServerData.LastModifiedDate);
        com.Parameters.AddWithValue("@IsAdministrator", em.ServerData.IsAdministrator);
        com.Parameters.AddWithValue("@IsDeleted", em.ServerData.IsDeleted);
        com.Parameters.AddWithValue("@Role", em.ServerData.Role);
        com.Parameters.AddWithValue("@PIN", em.ServerData.PIN);
        com.ExecuteNonQuery();
    }
}

Я получаюследующая ошибка:

Произошла ошибка при разборе запроса.[Номер строки токена = 1, смещение строки токена = 27, Ошибка токена = (]

1 Ответ

2 голосов
/ 23 октября 2010

Удалите скобки вокруг списка SET, т.е.

  string sql = "UPDATE SalesAssistant SET " 
+ "Name=@Name,IsEnabled=@IsEnabled,Role=@Role,LastModifiedDate=@LastModifiedDate,IsAdministrator=@IsAdministrator,PIN=@PIN,IsDeleted=@IsDeleted" + 
 " WHERE SalesAssistantID=@SalesAssistantID"; 
...