Мой обновленный выполняет расчет, но обновляет одно и то же значение во всех строках - PullRequest
0 голосов
/ 23 марта 2019

Когда я запускаю приведенную ниже функцию, она зацикливается и записывает новые значения в базу данных, но все значения одинаковы. У меня была похожая проблема, но я реализовал ее по-другому - это другой способ не использовать массив.

cmd = con.CreateCommand();
string end = @"SELECT balance, accrued FROM account ";
string update = @"UPDATE account SET balance = @balance WHERE account.prodid = product.prodid";
con.Open();
cmd = new SQLiteCommand(end, con);
reader = cmd.ExecuteReader();
while (reader.Read())
{
    double balance = double.Parse(reader[0].ToString());
    double accrued = double.Parse(reader[1].ToString());
    balance = balance *accrued;
    cmd = new SQLiteCommand(update, con);        
    cmd.Parameters.AddWithValue("balance", balance);
    cmd.ExecuteNonQuery();       
}

1 Ответ

0 голосов
/ 23 марта 2019

Вы можете использовать SQL напрямую для расчета баланса вашего столбца, как показано ниже.

UPDATE account SET balance = balance * accrued 

С наилучшими пожеланиями.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...