ASP.NET + SqlDataAdapter не возвращает правильные результаты с запросом

Я пытаюсь запустить это:

SqlDataAdapter da = new SqlDataAdapter("Выберите 100 лучших * из таблицы_имя по идентификатору desc", соед.)

и я получаю все строки вместо последних 100.


person Unix Mac    schedule 26.02.2014    source источник
comment
Удалите TOP 100 из оператора select.   -  person M.Ali    schedule 27.02.2014
comment
Непонятна проблема, вам нужны только 100 строк, и этот запрос возвращает все строки, или вам нужны все строки, и этот запрос возвращает только последние 100?   -  person Steve    schedule 27.02.2014
comment
Мне нужны последние 100 строк в таблице   -  person Unix Mac    schedule 27.02.2014
comment
Этот запрос должен работать. Возможно, есть другой код, который изменяет команду. Не могли бы вы добавить код, который запускает адаптер?   -  person Steve    schedule 27.02.2014
comment
Поместите на него профилировщик трассировки/sql. Посмотрите, что отправляется в базу данных.   -  person granadaCoder    schedule 27.02.2014


Ответы (2)


Попробуйте запустить профилировщик SQL и проверьте, какой фактический запрос выполняется в базе данных.

Это должно дать вам больше информации о том, как действовать дальше.

person RKS    schedule 27.02.2014

У вас есть TOP 100 в вашем операторе SELECT, поэтому он возвращает только 100 строк. удалите TOP 100 из вашего выбора, и он вернет все строки.

SqlDataAdapter da = new SqlDataAdapter("SELECT * FROM table_name ORDER BY id DESC", conn)

person M.Ali    schedule 26.02.2014
comment
Проблема в другом. Хотите 100 строк, но все возвращается. - person Steve; 27.02.2014
comment
Я только предполагаю, что текущий запрос OP возвращает TOP 100, и он / она недоволен и говорит что-то вроде " I am all the rows back, not the last 100.": S, поэтому я предполагаю, что он / она хочет вернуть все строки, а не только TOP 100 строк. - person M.Ali; 27.02.2014
comment
Хорошо см. его комментарий в вопросе выше - person Steve; 27.02.2014