У меня есть две таблицы в двух разных базах данных SQL Server на разных серверах. Каждая таблица имеет одинаковое количество строк (каждый ~ 65000), и они связаны общим столбцом ID
. Я создал объект, который имеет свойства, прочитанные и обновленные из этих двух таблиц.Обновить объект из двух разных таблиц базы данных
Я прочитал все элементы из первой таблицы и создал экземпляр своего объекта, а затем обновил его свойства. Затем я добавляю его в список. После этого я прочитал из второй таблицы, чтобы обновить оставшиеся свойства объекта.
Что может быть лучшим способом для этого? Есть ли у вас предложения? В этот момент я прохожу через свой список и для каждого объекта в списке получаю данные со второго сервера. Конечно, это занимает время (~ 15 минут).
Например, можно создать временную таблицу на одном из серверов? Время, которое я потребляю, находится в моей петле. Время, затраченное на извлечение данных с этих двух серверов, подходит для меня.
Прежде всего заполните обе таблицы базы данных двумя переменными System.Data.DataTable и используйте запрос Linq, чтобы присоединиться к ним, используя столбец id. Затем вы можете просматривать записи и избегать вызовов на второй db для каждой записи. – Kaf
@Indikaf Я уже получаю данные с серверов сначала, извините, что это может быть неясно в моих объяснениях. Когда я измеряю время, которое используется для получения данных SQL, я вижу, что в моем случае это нормально. Я должен потратить большую часть времени, когда пытаюсь найти свой объект в коллекции Linq, чтобы установить его свойства в соответствии с таблицей данных со второго сервера. Мне кажется, удобный подход к серверу очень удобен. Потому что я думаю, что могу сделать то же самое с тем, что я делаю Linq в своем SQL-запросе. – Demir