Программеры, ау.
Вопрос в следующем:
Нужно сделать ПРАВИЛЬНУЮ нумерацию в базе данных (Paradox 7), чтобы при удалении записи нумерация не портилась (autoincrement). КАК????
Надеюсь понятно изложил суть.
Страница 1 из 1
Вопросы по Delphi язык программирования Delphi (FAQ)
#2
Отправлено 19 August 2004 - 08:40
тут прийдется либо вручную генерить номера записей и затем при удалении перелопачивать всю таблицу, чтобы првести ее в порядок (что будет очень долго и гиморно) - это если тебе нужна нумерация строго в порядке появления этих записей в таблице, либо хранить где-то номера удаленных записей и при добавлении новой записи сначала проверять нет ли свободных номеров, оставшихся от удаленных записей...
#3
Отправлено 19 August 2004 - 14:08
ZEVS, а нафига? Если у тебя где-то есть ссылки по номеру записи, то тебе и их необходимо будет править... Гиморно больно... А из того, что предложил beh0lder, второй вариант выгоднее - меньше лишних операций...
#4
Отправлено 22 August 2004 - 09:48
Все сделал, правда примитивно, но для не больших таблиц вполне приемлемо.
Код вставки записи:
Код удаления записи:
Мож проще можно?
Код вставки записи:
begin Form1.Table1.Last; Form1.Table1.Append; Form1.Table1NumPP.Text := IntToStr(Form1.Table1.RecordCount+1);
Код удаления записи:
procedure TForm6.Button1Click(Sender: TObject); var Count : integer; Pos : integer; begin Pos := Form1.Table1.RecNo; Form1.Table1.Delete; for Count := Pos to Form1.Table1.RecordCount do begin Form1.Table1.RecNo := Count; Form1.Table1.Edit; Form1.Table1NumPP.Text := IntToStr(Form1.Table1.RecNo); end; Form1.Table1.RecNo := Pos; Form6.Close; end;
Мож проще можно?
#5
Отправлено 22 August 2004 - 22:40
Во всех связанных таблицах надо будет NumPP тоже исправлять.
Тебе что обязательно, что бы они по порядку шли?
Тебе что обязательно, что бы они по порядку шли?
#6
Отправлено 25 August 2004 - 07:42
чет я не догоню...
ты номер записи сам чтоли ставишь? и поле есть у тя для этого....
а нафига??
тебе это проблем создает лишних..проверка -перепроверка
наверно пересмотреть тебе надо алгоритм..
ты номер записи сам чтоли ставишь? и поле есть у тя для этого....
а нафига??
тебе это проблем создает лишних..проверка -перепроверка
наверно пересмотреть тебе надо алгоритм..
#7 NT Man
Отправлено 19 September 2004 - 10:45
Цитата
Мож проще можно?
А нафига тебе в самой БД хранить номера?
Тебе же их надо просто отобразить в Grid-е???
Опиши задачу по подробнее...
P.S. Пошли на мой форум там нормально и поговорим.
Сообщение отредактировал NT Man: 19 September 2004 - 10:47
#8
Отправлено 06 November 2004 - 23:32
кто-нибудь может внятно ответь и привести соответствующие аргументы: на чем лучше программить делфи или С++ билдер ???
Страница 1 из 1