Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2002.10.28;
Скачать: CL | DM;

Вниз

Индекс MS SQL не работает   Найти похожие ветки 

 
korn   (2002-10-06 15:49) [0]

Помогите, знающие люди! Программка на D6. Подключаюсь через ADOСonnection к MS SQL. Все работает нормально. НО, указав в свойствах таблицы ADOTable индекс MS SQL типа IX_Person (зозданный в Enterprice Manager"е), результата не получаю. Система на индекс не ругается, но и записи не упорядочивает. Если же просто указать в свойствах таблицы IndexField, то все работает, но мне-то нужен ТОТ индекс, с сервера... Как быть?


 
wicked ©   (2002-10-06 17:14) [1]

1. использовать свойство Sort (а есть ли оно у TADOTable?...)
2. не использовать ADOTable... вместо него использовать ADODataSet и в запросе упорядочивать так, как нужно... или использовать Sort - он там точно есть...


 
vuk ©   (2002-10-06 20:05) [2]

Обычные индексы (не кластерные) создаются не для упорядочивания записей, а для ускорения выборок. Напротив, кластерные индексы создаются для физического упорядочивания записей. Понятное дело, что кластерный индекс у таблицы может быть только один и его желательно создавать для полей, значения которых будут только возрастать по мере добавления записей, иначе будут лишние расходы на вставку записей.
А сортировку записей, как уже сказано, лучше выполнять при формировании запроса при помощи предложения order by.


 
korn   (2002-10-06 20:47) [3]

Thanx! Попробую разобраться...


 
korn   (2002-10-07 10:48) [4]

1) Нет там в свойствах "Sort" ни у Table, ни у DataSet... :-(
2) Зачем же мне наворачивать запросы, если я просто желаю показать пользователю DBGrid с упорядоченным списком фамилий?... Хотя, может это концептуально и более правильно.

А в книжках и Help"ах пишут, что должно работать... Мда... Что бы такое придумать?...


 
sniknik ©   (2002-10-07 11:38) [5]

свойство sort есть у ADOTable а не Table, внимательней к ответам.

property Sort: WideString;
ADOQuery1.Sort := "LastName ASC, DateDue DESC"

кстати если у тебя Table то значит и BDE? т.е. дикая связка BDE->ODBC->MSSQL что не есть good. (возможны ошибки именно изза этого, хотя ошибки сомнительно но вот функционал снижается точно, а ошибки как ожидание чегото что в этой связке не работает)


 
vuk ©   (2002-10-07 14:37) [6]

>Зачем же мне наворачивать запросы
А в любом случае без SQL не обойтись, правда если Вы используете ADOTable, то запрос будет сгенерирован без Вашего участия. И какая в результате разница?


 
korn   (2002-10-08 08:02) [7]

1) Я понял в чем дело. Свойства SORT нет ни у TTable, ни у TADOTable В ИНСПЕКТОРЕ ОБЪЕКТОВ (почему-то). "ReadOnly", а потом сразу "TableDirect". Но В ПРИНЦИПЕ оно есть. И это отлично! :-)

2) И на счет Query это, пожалуй, очень правильное замечание...

Спасибо ребята! Огромное спасибо за помошь! Давно "живу" на этом сайте, но не перестаю удивляться его полезности...



Страницы: 1 вся ветка

Текущий архив: 2002.10.28;
Скачать: CL | DM;

Наверх




Память: 0.48 MB
Время: 0.02 c
3-92326
ec
2002-10-05 15:43
2002.10.28
Как послать параметр в StoredProc


14-92721
NewI
2002-10-08 11:37
2002.10.28
Кто-нибудь знает есть ли Service Pack для Delphi_6


1-92465
Novichek
2002-10-18 07:25
2002.10.28
можно ли програмно пролистать StringGrid?


14-92737
Tornado
2002-10-09 12:49
2002.10.28
Уважаемые Мастера, очень нужна ваша помощь !!!


3-92364
Kolya
2002-10-06 08:58
2002.10.28
База данных БЕЗ dll