Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Порядок записей по умолчанию в таблице [D5, IB6.x]


New123 ©   (2002-08-11 02:04:00) 

Надо изменить порядок записей по умолчанию в таблице с ascending на descending. Но при создании primary key создается индекс с порядком ascending. Как его изменить или как активировать другой индекс, но только средствами IB6?


Anatoly Podgoretsky   (2002-08-12 15:09:00) [1]

:-) достойно ответил, не фиг накатывать.


Suntechnic   (2002-08-12 15:05:00) [2]

>Anatoly Podgoretsky © (12.08.02 09:34)
Если мы говорим о базах вообще, то это ересь, если о конкретной реализации, то вполне могу представить и такую реализацию. В любом случае первичный ключ никак не влияет на порядок вывода и служит он совсем для другой цели - для однозначной идентификации записи.

А не кто и не говорит что primery key влияет на порядок вывода. Я вёл речь о том, как эти записи физическирасполагаются на сервере. Более того, если сервер при выполнении запроса будет использовать этот индекс, то, вероятнее всего, вы так этот набор данных и получите. А с точки зрения SQL конечно же такого понятия не существует, но иногда полезно знать как этот механизм устроен.

Alexandr © (12.08.02 08:22)
2Suntechnic: Если не знаешь лучше промолчи, чем пороть чушь.


Ну это весомый аргумент. По идеи я должен сказать "сам дурак"?


Anatoly Podgoretsky   (2002-08-12 09:34:00) [3]

Suntechnic © (11.08.02 18:31)
Если мы говорим о базах вообще, то это ересь, если о конкретной реализации, то вполне могу представить и такую реализацию. В любом случае первичный ключ никак не влияет на порядок вывода и служит он совсем для другой цели - для однозначной идентификации записи. Ему же всего лишь надо использовать предикат ORDER BY и создать индекс с обратным порядком для ускорения выборки.
Сами индексы в SQL базах тоже никак на порядок не влияют, служат они только для внутренних целей сервера.


AlexSam   (2002-08-12 09:28:00) [4]

Создай еще индекс на необходимое поле с descending. Или у тебя большая за и критически с размером файла БД?


Alexandr   (2002-08-12 08:22:00) [5]

2Suntechnic: Если не знаешь лучше промолчи, чем пороть чушь.


Suntechnic   (2002-08-11 18:31:00) [6]

>Anatoly Podgoretsky © (11.08.02 14:22)

primary key никак на порядок записей в таблице не влияет, даже понятия такого нет

Я бы сказал, что это не совсем верно. Физический порядок расположения записей на сервере определяется кластерным индексом. А кластерный индекс этио, как правило, primary key. Так работают все нормальные СУБД, единственное, что я не очень много сталкивался с IB, но сомневаюсь, что там по другому.

тебе надо упорядочивать получение набора данных, если тебе требуется определенный порядок
Ну а тут спорить бессмысленно :) Это то, что надо автору вопроса.


Anatoly Podgoretsky   (2002-08-11 14:22:00) [7]

primary key никак на порядок записей в таблице не влияет, даже понятия такого нет, тебе надо упорядочивать получение набора данных, если тебе требуется определенный порядок


Наверх

Титульная страница Поиск, карта сайта Написать письмо