от
В настоящее время я использовать объект DataTable, чтобы получить результаты из базы данных, которые я могу использовать в моем коде. Однако, много примеров в интернете показывают, вместо использования набора данных и доступа к таблице(ы) с помощью метода коллекции. Есть ли какие-либо преимущества, производительность мудрым или иначе, использование наборов данных или таблиц данных как способ хранения результаты SQL?

Ваш ответ

Отображаемое имя (по желанию):
Конфиденциальность: Ваш электронный адрес будет использоваться только для отправки уведомлений.

7 Ответы

0 голосов
от
В настоящее время я использовать объект DataTable, чтобы получить результаты из базы данных, которые я могу использовать в моем коде. Однако, много примеров в интернете показывают, вместо использования набора данных и доступа к таблице(ы) с помощью метода коллекции. Есть ли какие-либо преимущества, производительность мудрым или иначе, использование наборов данных или таблиц данных как способ хранения результаты SQL?
0 голосов
от
Это действительно зависит от рода данные вы берете обратно. Поскольку набор данных (по сути) просто коллекция объектов DataTable, вы можете вернуть несколько различных наборов данных в единую, и, следовательно, более управляемы, объект. Производительность-мудрый, вы, скорее всего, вам бестолочи из запросов неоптимизирована, чем от "неправильного" выбора .Чистая конструкция. По крайней мере, был мой опыт.
0 голосов
от
Одним из основных отличий является то, что наборы данных может содержать несколько таблиц, определить связи между этими таблицами. Если вы не только возвращает один результирующий набор, хотя я думаю, что объект DataTable будет более оптимизирован. Я думаю, там должен быть какой-накладные расходы (конечно небольшой), чтобы предложить функциональность набора данных и следить за несколькими объектами DataTable.
0 голосов
от
в 1.х раньше были вещи, объекты DataTable не мог наборов данных может (не помню точно). Все, что изменилось в 2.х. Я думаю, вот почему много примеров еще использовать наборы данных. Объекты DataTable должен быть быстрее, так как они более легкие. Если вы только потянуть единый результат, это ваш лучший выбор между двумя.
0 голосов
от
Одной из особенностей набора данных заключается в том, что если вы можете назвать несколько инструкций Select в хранимой процедуры набор данных будет иметь один объект DataTable для каждого.
0 голосов
от
Есть некоторые оптимизации, которые можно использовать при заполнении таблицы DataTable, такие как вызов BeginLoadData(), вставки данных, то вызов EndLoadData(). Это отключает некоторые внутренние поведения в объект DataTable, таких как обслуживание индекса, и т. д. См. эту статью для получения дополнительной информации.
0 голосов
от
Когда вы только в любом случае иметь дело с одним столом, самый большой практической разницы я обнаружил, заключается в том, что набор данных имеет "HasChanges" метод, но объект DataTable не. Оба "метода getchanges" однако, так что вы можете использовать, и проверить на null.
...