Не думаю, что вы увидите существенную разницу между этими двумя подходами.Из вашего описания звучит так, как будто вы будете записывать одинаковые циклы ЦП в любом случае.Важны следующие вещи:
- Получить список
- Итерация по списку для получения идентификаторов
- Итерация по списку для обновления базы данных
Порядок, в котором происходят эти три действия, и то, происходят ли они в рамках одного метода или подпрограммы, не имеет значения.Все остальные действия (объявление переменных, присвоение результатов и т. Д.) Имеют нулевое или незначительное влияние на производительность.
При прочих равных условиях ваш первый вариант может быть немного более производительным, поскольку вы будете выполнять итерации только один раз,Я предполагаю, как извлечение идентификаторов и обновление базы данных за один проход.Но стоимость итерации, вероятно, будет очень мала по сравнению со стоимостью обновления базы данных, поэтому вы не заметите разницы в производительности.
Сказав все это, существует множество факторовэто может повлиять на производительность, например, тип списка, который вы просматриваете, скорость вашего соединения с базой данных и т. д., что может затмить эти другие соображения.В любом случае это не выглядит слишком много кода.Я бы настоятельно рекомендовал построить оба и протестировать их.
Тогда дайте нам знать ваши результаты!