Как обновить столбец в базе данных со значениями массива? - PullRequest
1 голос
/ 17 декабря 2011

У меня есть массив int с некоторыми значениями внутри, а его размер неизвестен (заполнен динамически).Я хочу обновить столбец в базе данных с этим массивом (т.е. столбец m n-й записи в базе данных будет обновлен с помощью n-го элемента массива).Как мне этого добиться?Должен ли я обновить каждую запись таблицы в отдельном sql, как показано ниже:

for(int i = 0; i < array.Length; i++)
{
    string sqlCommand = "UPDATE TABLENAME SET THECOLUMN = " + array[i] + " WHERE ID = " + (i+1);
    // Execute the command
}

, или есть более эффективный или простой способ сделать это?

PS: Я использую базу данных ACCESS, подключаю ее к веб-сайту (ASP.NET) через C #

1 Ответ

2 голосов
/ 17 декабря 2011

Я бы сделал это в одну поездку

StringBuilder command = new StringBuilder();
for(int i = 0; i < array.Length; i++) {
    command.Append("UPDATE TABLENAME SET THECOLUMN = " + array[i] + 
                " WHERE ID = " + (i+1) + ";");
}
// Execute the command HERE

«Назад и вперед» к базе данных довольно дороги, поэтому обычно вы хотите, чтобы ваши сообщения были «короткими, а не болтливыми».

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