Стоит ли мне беспокоиться, что ORM по умолчанию возвращают все столбцы?

Имея ограниченный опыт работы с ORM (пока что LLBL Gen Pro и Entity Framework 4), я заметил, что по сути запросы возвращают данные для всех столбцов. Я знаю, что NHibernate - еще одна популярная ORM, и я не уверен, применимо ли это к ней или нет, но я предполагаю, что это так.

Конечно, я знаю, что есть обходные пути:

  • Создание представления SQL и создание моделей и сопоставлений в представлении
  • Использование хранимой процедуры и создание моделей и сопоставлений для возвращенного набора результатов

Я знаю, что соблюдение определенных правил может помочь смягчить это:

  • Обеспечение разумного ограничения количества строк при выборе данных
  • Обеспечение того, чтобы ваши таблицы не были чрезмерно широкими (большое количество столбцов и / или большие типы данных)

Итак, вот мои вопросы:

  1. Достаточно ли описанных выше методов , или мне все же стоит подумать о способах ограничения количества возвращаемых столбцов?

  2. Есть ли другие способы ограничения возвращаемых столбцов, кроме перечисленных выше?

  3. Как вы обычно подходите к этому в своих проектах?

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

ОБНОВЛЕНИЕ: Это происходит из-за того, что SELECT * считается плохой практикой. См. это обсуждение .

6
задан Community 23 May 2017 в 12:19
поделиться