Во многом зависят ли вопросы эффективности от размера Ваших производственных наборов данных (и их темп роста). Если Ваши наборы данных не будут этим большим, и они не собираются выращивать тот быстро, не может быть большой части преимущества производительности для выбора отдельных столбцов.
С большими наборами данных и более быстрыми уровнями роста данных, преимущество производительности становится все более важным.
Для наблюдения графически, существует ли какое-либо различие я предложил бы использовать запрос анализатор для наблюдения плана выполнения запросов относительно ВЫБОРА * и эквивалентного ВЫБОРА col1, col2, и т.д. Это должно сказать Вам, какой из двух запросов более эффективен. Вы могли также генерировать некоторые данные тестирования переменных объемов, видят, каковы синхронизации.
Для начала установите для свойства AppendDataBoundItems обоих DropDownLists значение true. Затем добавьте NULL ListItem, добавив следующий элемент
в каждый DropDownList, чтобы декларативная разметка выглядела так:
<asp:DropDownList ID="Categories" runat="server"
DataSourceID="CategoriesDataSource" DataTextField="CategoryName"
DataValueField="CategoryID" SelectedValue='<%# Bind("CategoryID") %>'
AppendDataBoundItems="True">
<asp:ListItem Value="">[nothing selected]</asp:ListItem>
</asp:DropDownList>