|
|
|||||
Регистрация: Jun 2001
Сообщений: 45
|
Разбитие на страницы
Привет!
Я работаю с ASP и MSSQL Мне надо, чтобы кокда я делаю выборку из базы, на странице можно было вибирать количество записей на странице, ну там 10, 15, 50 Как это сделать?
__________________
С уважением Песоцкий Дмитрий! |
|
|||||
[+1 23.05.11]
Регистрация: Dec 2001
Сообщений: 4,159
|
Простейший способ:
1. Строишь выборку, которая возвращает только первичные ключи . Загружаешь ее целиком. 2. Находишь в списке ключей нужный кусок из N записей и выполняешь запрос, который извлекает эти N записей по явно заданным первичным ключам. Типа такого: 1. select customerID from customers where city="Moscow" 2. select * from customers where customerID in (103423, 2342, 2343, 6456, 2645, 3554 )
__________________
GIT d++ s++:++ a C++$ UB++ P++ L+ E+ W+++ N++ w++ O+ M V- t-- 5-- X+ R+++ tv- b+++ D++ |
|
|||||
Регистрация: Jun 2001
Сообщений: 45
|
Но у меня 7000 строк в базе!
Представь сколько такая база будет грузиться по модему!!! Каждая строка по 16 полей и запрос я делаю не по 1 параметру, а по 12!!!!! Что мне нужно сделать в данном случае? Сформировать отдельный запрос и по этому запрсу формировать ключевые поля? http://monitor.kippk.kolomna.ru рользователь: user пароль: gjkmpjdfntkm (пользователь) - только латинскими как на примере!!!
__________________
С уважением Песоцкий Дмитрий! |
|
|||||
та же проблемма, а нормального решения так и не нашёл
__________________
Это - твоя жизнь и ты должен жить ее для себя. |
|
|||||
Как я понял, тебе надо, например тут:
http://monitor.kippk.kolomna.ru/sele...cat_id.asp?id={18080A49-3180-41EE-B664-37EC424DB05C} Выводить по 10,15,20 записей на страницу?
__________________
SUB SPECIE AETERNITATIS |
|
|||||
Регистрация: Jun 2001
Сообщений: 45
|
Да! Да!
Если не трудно, то ответьте пожалуйста!!! Или ссылочки по теме дайте!!! Заранее спасибо!
__________________
С уважением Песоцкий Дмитрий! |
|
|||||
[+1 23.05.11]
Регистрация: Dec 2001
Сообщений: 4,159
|
Цитата:
__________________
GIT d++ s++:++ a C++$ UB++ P++ L+ E+ W+++ N++ w++ O+ M V- t-- 5-- X+ R+++ tv- b+++ D++ |
|
|||||
предлагаю на выбор два способа разбивать выборку постранично:
1. Используя RecordSet 2. Используя GetRows Первый удобнее, но сервер грузит.. Второй работает быстрее, но нельзя обратится к полю по имени
__________________
SUB SPECIE AETERNITATIS |
|
|||||
2Crazy - ne nujno meditirovat' - eto ne samiy luchshiy sposob.
Da ya mogu dobavit' pervichniy kluchik(etche i sdlat' ego uporyadochenim po odnomu) i zatem igrat'sya s zapsosami tipa: SELECT TOP intPagesToGet * FROM customers where (customerId BETWEEN lastID AND lastID+intPagesToGet) no ne vsegda mozhno kluchi dobavlyat'...(db u menya chuzhaya ne mogu ya ee menyat') Ispol'zuya RecordSet? v smisle .AbsolutePage??? - performance suicide GetRows i zatem brat' kuski arraya po chastyam? ne proboval... no somnevaus' chto budet bistree...
__________________
Это - твоя жизнь и ты должен жить ее для себя. |
|
|||||
[+1 23.05.11]
Регистрация: Dec 2001
Сообщений: 4,159
|
Цитата:
Цитата:
__________________
GIT d++ s++:++ a C++$ UB++ P++ L+ E+ W+++ N++ w++ O+ M V- t-- 5-- X+ R+++ tv- b+++ D++ |
Часовой пояс GMT +4, время: 15:15. |
|
« Предыдущая тема | Следующая тема » |
Опции темы | |
Опции просмотра | |
|
|