C++ Builder
| Главная | Уроки | Статьи | FAQ | Форум | Downloads | Литература | Ссылки | RXLib | Диски |

 
Быстрая нумерация строк, как рациональнее
vinni
Отправлено: 21.03.2007, 11:46


Дежурный стрелочник

Группа: Участник
Сообщений: 46



Здравствуйте, подскажите незнайке в БД пожайлуйста:
вот у меня есть таблица, Query1 (к примеру).
Как мне написать запрос на SQL, чтобы пронумеровать все строки, начиная от 1 в возрастающем порядке. Просто, как я понимаю, после каждого UPDATE значения в строке, необходимо снова делать SELECT (чтобы отобразить значения) и потом перескакивать на определённое количество строк, чтобы обновить следующую строку.
Тогда получается не совсем рационально.
olegenty
Отправлено: 21.03.2007, 11:58


Ветеран

Группа: Модератор
Сообщений: 2412



а слабо сказать, что за СУБД?

помимо прочего, думаю, решение можно найти на SQL.RU для практически любой СУБД.
vinni
Отправлено: 21.03.2007, 12:18


Дежурный стрелочник

Группа: Участник
Сообщений: 46



BDE, Paradox, что ещё сказать?
desivers
Отправлено: 21.03.2007, 12:58


Дежурный стрелочник

Группа: Участник
Сообщений: 32



тебе точно нужен sql просто проще будет перебрать все записи Query->Next() и в каждой записи в нужном поле заменить на свое значение чем каждый раз строить запрос
olegenty
Отправлено: 21.03.2007, 13:49


Ветеран

Группа: Модератор
Сообщений: 2412



Если пользовать базу через EhLib (TBDEDataDriverEh -> TMemTableEh), то это легко: создаёшь вычисляемое (Calculated) поле, и пишешь в него RecNo текущей записи. Получается ни от чего не зависимая сквозная нумерация на клиенте. Никакие перезапросы, соответственно, даром не нужны.
vinni
Отправлено: 22.03.2007, 18:04


Дежурный стрелочник

Группа: Участник
Сообщений: 46



спасибо будем думать

Вернуться в Работа с базами данных в C++Builder