Каков наилучший способ загрузки большого количества данных SQL в .net и создания файла CSV? - PullRequest
0 голосов
/ 15 декабря 2010

У меня есть sql proc, который возвращает более 20 000 записей и я хочу получить эти данные в CSV для операции массовой загрузки SQL2005.

Я думаю, что использование набора данных - это излишне, так как мне нужен только прямой доступ только к чтению данных.

Теперь у меня есть устройство для чтения данных, но я не думаю, что итерация устройства для чтения данных - хорошая идея, потому что она заблокирует Oracle-БД, от которой я получаю 20000 записей в течение некоторого времени, пока она делает свое дело.

логически я думаю создать отключенный снимок данных в таблице данных, возможно, и использовать его для создания моего CSV-файла.

Я не часто разрабатываю такие приложения ETL, поэтому я хотел бы знать, что является золотым стандартом для этого типа операций.

мысли

также позвольте мне упомянуть, что это должно быть консольное приложение, поскольку правила CORP не разрешают подключенные серверы и все остальное, что означает, что SSIS отключен.

1 Ответ

1 голос
/ 15 декабря 2010

Поскольку вы беспокоитесь о том, чтобы самостоятельно выполнить итерацию устройства чтения данных, я могу порекомендовать использовать класс SqlBulkCopy.

Позволяет загружать данные в базу данных сервера sql из любого источника, который может быть прочитан с помощью экземпляра IDataReader

Может решить вашу потенциальную проблему с блокировкой.

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