Главная страница
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.016 c
7-92758
Igorka
2002-08-23 11:22
2002.10.28
NT Service


14-92700
Johnny Smith
2002-10-04 16:29
2002.10.28
Поскольку модератор грохает...


3-92403
Эрик
2002-10-08 12:33
2002.10.28
Опять Навиготор :)


1-92534
zsv
2002-10-16 09:14
2002.10.28
Не могу изменить значение параметра в реестре!!!


1-92592
jen_bond
2002-10-17 08:52
2002.10.28
MainMenu 2000/Xp