Проверка наличия данных из файла xml в таблице SQL Server - PullRequest
0 голосов
/ 28 января 2020

У меня есть файл XML, который мне нужно вставить в таблицу SQL Server. Таблица соответствует элементу примечания в файле xml. Прежде чем вставлять данные из файла, мне необходимо определить, присутствуют ли данные в таблице.

Файл XML выглядит следующим образом:

<?xml version="1.0" encoding="UTF-8"?>
<note>
  <to>Tove</to>
  <from>Jani</from>
  <heading>Reminder</heading>
  <body>Don't forget me this weekend!</body>
</note>
<note>
  <to>Charles</to>
  <from>Peter</from>
  <heading>Reminder</heading>
  <body>Don't forget me next weekend!</body>
</note>

Имя таблица tbNote. Индекс уникального ключа находится в столбцах To и From. Основываясь на этих двух значениях, мне нужно знать, есть ли запись в таблице, прежде чем вставлять ее.

Если он уже присутствует, мне просто нужно вернуть запись со значениями To и From.

В настоящее время я перебираю каждую запись в XML file, запустить запрос на выборку на основе значений To и From, и если результат будет нулевым, я продолжу.

Если есть совпадение, я создаю экземпляр объекта со свойством To и Note. Я делаю это через весь файл.

Это очень медленно, так как мой файл может иногда содержать 100000 записей.

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

Заранее спасибо.

...