Когда я запускаю приведенную ниже функцию, она зацикливается и записывает новые значения в базу данных, но все значения одинаковы. У меня была похожая проблема, но я реализовал ее по-другому - это другой способ не использовать массив.
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();
}