Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / ADO.NET, LINQ, Entity Framework, NHibernate, DAL, ORM [игнор отключен] [закрыт для гостей] / Проверка дубликатов при импорте / 4 сообщений из 4, страница 1 из 1
07.06.2007, 14:47
    #34581179
Slaven
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проверка дубликатов при импорте
Задача такая - перенести данные из таблицы-источника одний СУБД в целевую таблицу другой СУБД, не создав при этом записей-дубликатов в целевой таблице. проверка проходит по совокупности столбцов.

Пробовал выгружать источник и целевую таблицу в DataTable и сравнивать каждую запись источника со всей целевой таблицей....получается очень долго (в источнике и целевой таблицах по миллиону записей). Использовал и DataTable.Select и DataTable.Rows.Find и foreach. (Очень удивился, когда Select отработал медленнее, чем foreach).

Пробовал делать запрос в БД на импорт каждой записи из источника, что получилось не быстрее, чем первый вариант.

Как можно еще ускорить процесс переноса?
...
Рейтинг: 0 / 0
07.06.2007, 14:59
    #34581245
winsky!
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проверка дубликатов при импорте
СУБД какая?
...
Рейтинг: 0 / 0
07.06.2007, 15:39
    #34581434
Tassadar77
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проверка дубликатов при импорте
Если проверка на повтор осуществляется по совокупности столбцов, то можно создать хеш-таблицу, у которой в качестве ключей будет сумма всех значений полей результирующей таблицы, приведенной к типу string. Далее при добавлении нужно использовать метод HashTable.ContainsKey(object Key).
Этот метод работает очень быстро и вся операция займет всего два цикла.
...
Рейтинг: 0 / 0
07.06.2007, 15:40
    #34581447
winsky!
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Проверка дубликатов при импорте
когда ж вы, велосипедостроители повыведетесь уже...
Код: plaintext
1.
select distinct bla1, bla2 from table
...
Рейтинг: 0 / 0
Форумы / ADO.NET, LINQ, Entity Framework, NHibernate, DAL, ORM [игнор отключен] [закрыт для гостей] / Проверка дубликатов при импорте / 4 сообщений из 4, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]