Каковы оптимальные методы загрузки групповых данных в таблицу oracle из C# с использованием транзакций и обработки ошибок? - PullRequest
0 голосов
/ 10 января 2020

У меня есть требование, где мне нужно импортировать массовые данные из электронной таблицы, где один столбец предназначен для действия Добавить / Обновить или Удалить. Мне нужно загрузить эту электронную таблицу, используя веб-API и прочитать данные из файла Excel, и в соответствии с действием, указанным в электронной таблице, мне нужно вставить / обновить или удалить на основе сопоставления уникальной комбинации для строки. Также мне нужно вернуть сообщения об ошибках валидации с указанием причины, по которой данные не вставляются для конкретной строки или сообщения об успехе. Я пытался с OracleBulkCopy, но он не возвращает сообщения об ошибках для каждой строки.

1 Ответ

0 голосов
/ 10 января 2020

OracleBulkCopy не может выполнять Update и Delete.

Если вы хотите создать собственное решение, я предлагаю вам поиск ArrayBinding. Вы сможете выполнять быстрые операции Insert, Update и Delete с ним.

Не существует решения, позволяющего узнать строку за строкой сообщение об ошибке. Сообщение об ошибке обычно относится ко всей партии.


Отказ от ответственности : я являюсь владельцем проекта Массовые операции

Это Проект не бесплатный, но если вы хотите, чтобы встроенное решение выполняло все операции, это может помочь вам.

// Easy to use
var bulk = new BulkOperation(connection);
bulk.BulkInsert(dt);
bulk.BulkUpdate(dt);
bulk.BulkDelete(dt);
bulk.BulkMerge(dt);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...